home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 January: Mac OS SDK / Dev.CD Jan 98 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / PInterfaces / Files.p < prev    next >
Encoding:
Text File  |  1997-08-12  |  87.1 KB  |  2,239 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        Files.p
  3.  
  4.      Contains:    File Manager (HFS and MFS) Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Release:    Universal Interfaces 3.0.1
  8.  
  9.      Copyright:    © 1985-1997 by Apple Computer, Inc., all rights reserved
  10.  
  11.      Bugs?:        Please include the the file and version information (from above) with
  12.                  the problem description.  Developers belonging to one of the Apple
  13.                  developer programs can submit bug reports to:
  14.  
  15.                      devsupport@apple.com
  16.  
  17. }
  18. {$IFC UNDEFINED UsingIncludes}
  19. {$SETC UsingIncludes := 0}
  20. {$ENDC}
  21.  
  22. {$IFC NOT UsingIncludes}
  23.  UNIT Files;
  24.  INTERFACE
  25. {$ENDC}
  26.  
  27. {$IFC UNDEFINED __FILES__}
  28. {$SETC __FILES__ := 1}
  29.  
  30. {$I+}
  31. {$SETC FilesIncludes := UsingIncludes}
  32. {$SETC UsingIncludes := 1}
  33.  
  34. {$IFC UNDEFINED __TYPES__}
  35. {$I Types.p}
  36. {$ENDC}
  37. {$IFC UNDEFINED __MIXEDMODE__}
  38. {$I MixedMode.p}
  39. {$ENDC}
  40. {$IFC UNDEFINED __OSUTILS__}
  41. {$I OSUtils.p}
  42. {$ENDC}
  43.  
  44. { Finder constants where moved to Finder.≈ }
  45. {$IFC UNDEFINED __FINDER__}
  46. {$I Finder.p}
  47. {$ENDC}
  48.  
  49.  
  50. {$PUSH}
  51. {$ALIGN MAC68K}
  52. {$LibExport+}
  53.  
  54.  
  55. CONST
  56.     fsAtMark                    = 0;
  57.     fsCurPerm                    = 0;
  58.     fsRdPerm                    = 1;
  59.     fInvisible                    = 16384;
  60.     fsWrPerm                    = 2;
  61.     fsRdWrPerm                    = 3;
  62.     fsRdWrShPerm                = 4;
  63.     fsFromStart                    = 1;
  64.     fsFromLEOF                    = 2;
  65.     fsFromMark                    = 3;
  66.     rdVerify                    = 64;
  67.     ioMapBuffer                    = 4;
  68.     ioModeReserved                = 8;
  69.     ioDirFlg                    = 4;                            {  see IM IV-125  }
  70.     ioDirMask                    = $10;
  71.     fsRtParID                    = 1;
  72.     fsRtDirID                    = 2;
  73.  
  74.  
  75.                                                                 {  CatSearch Search bitmask Constants  }
  76.     fsSBPartialName                = 1;
  77.     fsSBFullName                = 2;
  78.     fsSBFlAttrib                = 4;
  79.     fsSBFlFndrInfo                = 8;
  80.     fsSBFlLgLen                    = 32;
  81.     fsSBFlPyLen                    = 64;
  82.     fsSBFlRLgLen                = 128;
  83.     fsSBFlRPyLen                = 256;
  84.     fsSBFlCrDat                    = 512;
  85.     fsSBFlMdDat                    = 1024;
  86.     fsSBFlBkDat                    = 2048;
  87.     fsSBFlXFndrInfo                = 4096;
  88.     fsSBFlParID                    = 8192;
  89.     fsSBNegate                    = 16384;
  90.     fsSBDrUsrWds                = 8;
  91.     fsSBDrNmFls                    = 16;
  92.     fsSBDrCrDat                    = 512;
  93.     fsSBDrMdDat                    = 1024;
  94.     fsSBDrBkDat                    = 2048;
  95.     fsSBDrFndrInfo                = 4096;
  96.     fsSBDrParID                    = 8192;
  97.  
  98.                                                                 {  CatSearch Search bit value Constants  }
  99.     fsSBPartialNameBit            = 0;                            { ioFileName points to a substring }
  100.     fsSBFullNameBit                = 1;                            { ioFileName points to a match string }
  101.     fsSBFlAttribBit                = 2;                            { search includes file attributes }
  102.     fsSBFlFndrInfoBit            = 3;                            { search includes finder info }
  103.     fsSBFlLgLenBit                = 5;                            { search includes data logical length }
  104.     fsSBFlPyLenBit                = 6;                            { search includes data physical length }
  105.     fsSBFlRLgLenBit                = 7;                            { search includes resource logical length }
  106.     fsSBFlRPyLenBit                = 8;                            { search includes resource physical length }
  107.     fsSBFlCrDatBit                = 9;                            { search includes create date }
  108.     fsSBFlMdDatBit                = 10;                            { search includes modification date }
  109.     fsSBFlBkDatBit                = 11;                            { search includes backup date }
  110.     fsSBFlXFndrInfoBit            = 12;                            { search includes extended finder info }
  111.     fsSBFlParIDBit                = 13;                            { search includes file's parent ID }
  112.     fsSBNegateBit                = 14;                            { return all non-matches }
  113.     fsSBDrUsrWdsBit                = 3;                            { search includes directory finder info }
  114.     fsSBDrNmFlsBit                = 4;                            { search includes directory valence }
  115.     fsSBDrCrDatBit                = 9;                            { directory-named version of fsSBFlCrDatBit }
  116.     fsSBDrMdDatBit                = 10;                            { directory-named version of fsSBFlMdDatBit }
  117.     fsSBDrBkDatBit                = 11;                            { directory-named version of fsSBFlBkDatBit }
  118.     fsSBDrFndrInfoBit            = 12;                            { directory-named version of fsSBFlXFndrInfoBit }
  119.     fsSBDrParIDBit                = 13;                            { directory-named version of fsSBFlParIDBit }
  120.  
  121.                                                                 {  vMAttrib (GetVolParms) bit position constants  }
  122.     bLimitFCBs                    = 31;
  123.     bLocalWList                    = 30;
  124.     bNoMiniFndr                    = 29;
  125.     bNoVNEdit                    = 28;
  126.     bNoLclSync                    = 27;
  127.     bTrshOffLine                = 26;
  128.     bNoSwitchTo                    = 25;
  129.     bNoDeskItems                = 20;
  130.     bNoBootBlks                    = 19;
  131.     bAccessCntl                    = 18;
  132.     bNoSysDir                    = 17;
  133.     bHasExtFSVol                = 16;
  134.     bHasOpenDeny                = 15;
  135.     bHasCopyFile                = 14;
  136.     bHasMoveRename                = 13;
  137.     bHasDesktopMgr                = 12;
  138.     bHasShortName                = 11;
  139.     bHasFolderLock                = 10;
  140.     bHasPersonalAccessPrivileges = 9;
  141.     bHasUserGroupList            = 8;
  142.     bHasCatSearch                = 7;
  143.     bHasFileIDs                    = 6;
  144.     bHasBTreeMgr                = 5;
  145.     bHasBlankAccessPrivileges    = 4;
  146.     bSupportsAsyncRequests        = 3;                            {  asynchronous requests to this volume are handled correctly at any time }
  147.  
  148.  
  149.                                                                 {  Desktop Database icon Constants  }
  150.     kLargeIcon                    = 1;
  151.     kLarge4BitIcon                = 2;
  152.     kLarge8BitIcon                = 3;
  153.     kSmallIcon                    = 4;
  154.     kSmall4BitIcon                = 5;
  155.     kSmall8BitIcon                = 6;
  156.  
  157.     kLargeIconSize                = 256;
  158.     kLarge4BitIconSize            = 512;
  159.     kLarge8BitIconSize            = 1024;
  160.     kSmallIconSize                = 64;
  161.     kSmall4BitIconSize            = 128;
  162.     kSmall8BitIconSize            = 256;
  163.  
  164.                                                                 {  Foreign Privilege Model Identifiers  }
  165.     fsUnixPriv                    = 1;
  166.  
  167.                                                                 {  Authentication Constants  }
  168.     kNoUserAuthentication        = 1;
  169.     kPassword                    = 2;
  170.     kEncryptPassword            = 3;
  171.     kTwoWayEncryptPassword        = 6;
  172.  
  173.  
  174. { mapping codes (ioObjType) for MapName & MapID }
  175.     kOwnerID2Name                = 1;
  176.     kGroupID2Name                = 2;
  177.     kOwnerName2ID                = 3;
  178.     kGroupName2ID                = 4;                            {  types of oj object to be returned (ioObjType) for _GetUGEntry  }
  179.     kReturnNextUser                = 1;
  180.     kReturnNextGroup            = 2;
  181.     kReturnNextUG                = 3;
  182.  
  183.  
  184.  
  185. { Folder and File values of access privileges }
  186.     kfullPrivileges                = $00070007;                    {             ; all privileges for everybody and owner }
  187.     kownerPrivileges            = $00000007;                    {             ; all privileges for owner only }
  188.  
  189. { values of user IDs and group IDs }
  190.     knoUser                        = 0;
  191.     kadministratorUser            = 1;
  192.  
  193.     knoGroup                    = 0;
  194.  
  195.  
  196.  
  197. TYPE
  198.     GetVolParmsInfoBufferPtr = ^GetVolParmsInfoBuffer;
  199.     GetVolParmsInfoBuffer = RECORD
  200.         vMVersion:                INTEGER;                                { version number }
  201.         vMAttrib:                LONGINT;                                { bit vector of attributes (see vMAttrib constants) }
  202.         vMLocalHand:            Handle;                                    { handle to private data }
  203.         vMServerAdr:            LONGINT;                                { AppleTalk server address or zero }
  204.         vMVolumeGrade:            LONGINT;                                { approx. speed rating or zero if unrated }
  205.         vMForeignPrivID:        INTEGER;                                { foreign privilege model supported or zero if none }
  206.     END;
  207.  
  208.     ParmBlkPtr                            = ^ParamBlockRec;
  209.     IOCompletionProcPtr = Register68kProcPtr;  { PROCEDURE IOCompletion(paramBlock: ParmBlkPtr); }
  210.  
  211.     IOCompletionUPP = UniversalProcPtr;
  212.     IOParamPtr = ^IOParam;
  213.     IOParam = RECORD
  214.         qLink:                    QElemPtr;                                { queue link in header }
  215.         qType:                    INTEGER;                                { type byte for safety check }
  216.         ioTrap:                    INTEGER;                                { FS: the Trap }
  217.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  218.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  219.         ioResult:                OSErr;                                    { result code }
  220.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  221.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  222.         ioRefNum:                INTEGER;                                { refNum for I/O operation }
  223.         ioVersNum:                SInt8;                                    { version number }
  224.         ioPermssn:                SInt8;                                    { Open: permissions (byte) }
  225.         ioMisc:                    Ptr;                                    { Rename: new name (GetEOF,SetEOF: logical end of file) (Open: optional ptr to buffer) (SetFileType: new type) }
  226.         ioBuffer:                Ptr;                                    { data buffer Ptr }
  227.         ioReqCount:                LONGINT;                                { requested byte count; also = ioNewDirID }
  228.         ioActCount:                LONGINT;                                { actual byte count completed }
  229.         ioPosMode:                INTEGER;                                { initial file positioning }
  230.         ioPosOffset:            LONGINT;                                { file position offset }
  231.     END;
  232.  
  233.     FileParamPtr = ^FileParam;
  234.     FileParam = RECORD
  235.         qLink:                    QElemPtr;                                { queue link in header }
  236.         qType:                    INTEGER;                                { type byte for safety check }
  237.         ioTrap:                    INTEGER;                                { FS: the Trap }
  238.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  239.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  240.         ioResult:                OSErr;                                    { result code }
  241.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  242.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  243.         ioFRefNum:                INTEGER;                                { reference number }
  244.         ioFVersNum:                SInt8;                                    { version number }
  245.         filler1:                SInt8;
  246.         ioFDirIndex:            INTEGER;                                { GetFInfo directory index }
  247.         ioFlAttrib:                SInt8;                                    { GetFInfo: in-use bit=7, lock bit=0 }
  248.         ioFlVersNum:            SInt8;                                    { file version number }
  249.         ioFlFndrInfo:            FInfo;                                    { user info }
  250.         ioFlNum:                LONGINT;                                { GetFInfo: file number; TF- ioDirID }
  251.         ioFlStBlk:                INTEGER;                                { start file block (0 if none) }
  252.         ioFlLgLen:                LONGINT;                                { logical length (EOF) }
  253.         ioFlPyLen:                LONGINT;                                { physical length }
  254.         ioFlRStBlk:                INTEGER;                                { start block rsrc fork }
  255.         ioFlRLgLen:                LONGINT;                                { file logical length rsrc fork }
  256.         ioFlRPyLen:                LONGINT;                                { file physical length rsrc fork }
  257.         ioFlCrDat:                LONGINT;                                { file creation date& time (32 bits in secs) }
  258.         ioFlMdDat:                LONGINT;                                { last modified date and time }
  259.     END;
  260.  
  261.     VolumeParamPtr = ^VolumeParam;
  262.     VolumeParam = RECORD
  263.         qLink:                    QElemPtr;                                { queue link in header }
  264.         qType:                    INTEGER;                                { type byte for safety check }
  265.         ioTrap:                    INTEGER;                                { FS: the Trap }
  266.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  267.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  268.         ioResult:                OSErr;                                    { result code }
  269.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  270.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  271.         filler2:                LONGINT;
  272.         ioVolIndex:                INTEGER;                                { volume index number }
  273.         ioVCrDate:                LONGINT;                                { creation date and time }
  274.         ioVLsBkUp:                LONGINT;                                { last backup date and time }
  275.         ioVAtrb:                INTEGER;                                { volume attrib }
  276.         ioVNmFls:                INTEGER;                                { number of files in directory }
  277.         ioVDirSt:                INTEGER;                                { start block of file directory }
  278.         ioVBlLn:                INTEGER;                                { GetVolInfo: length of dir in blocks }
  279.         ioVNmAlBlks:            INTEGER;                                { for compatibilty ioVNmAlBlks * ioVAlBlkSiz <= 2 GB }
  280.         ioVAlBlkSiz:            LONGINT;                                { for compatibilty ioVAlBlkSiz is <= $0000FE00 (65,024) }
  281.         ioVClpSiz:                LONGINT;                                { GetVolInfo: bytes to allocate at a time }
  282.         ioAlBlSt:                INTEGER;                                { starting disk(512-byte) block in block map }
  283.         ioVNxtFNum:                LONGINT;                                { GetVolInfo: next free file number }
  284.         ioVFrBlk:                INTEGER;                                { GetVolInfo: # free alloc blks for this vol }
  285.     END;
  286.  
  287.     CntrlParamPtr = ^CntrlParam;
  288.     CntrlParam = RECORD
  289.         qLink:                    QElemPtr;                                { queue link in header }
  290.         qType:                    INTEGER;                                { type byte for safety check }
  291.         ioTrap:                    INTEGER;                                { FS: the Trap }
  292.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  293.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  294.         ioResult:                OSErr;                                    { result code }
  295.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  296.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  297.         ioCRefNum:                INTEGER;                                { refNum for I/O operation }
  298.         csCode:                    INTEGER;                                { word for control status code }
  299.         csParam:                ARRAY [0..10] OF INTEGER;                { operation-defined parameters }
  300.     END;
  301.  
  302.     SlotDevParamPtr = ^SlotDevParam;
  303.     SlotDevParam = RECORD
  304.         qLink:                    QElemPtr;                                { queue link in header }
  305.         qType:                    INTEGER;                                { type byte for safety check }
  306.         ioTrap:                    INTEGER;                                { FS: the Trap }
  307.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  308.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  309.         ioResult:                OSErr;                                    { result code }
  310.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  311.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  312.         ioSRefNum:                INTEGER;
  313.         ioSVersNum:                SInt8;
  314.         ioSPermssn:                SInt8;
  315.         ioSMix:                    Ptr;
  316.         ioSFlags:                INTEGER;
  317.         ioSlot:                    SInt8;
  318.         ioID:                    SInt8;
  319.     END;
  320.  
  321.     MultiDevParamPtr = ^MultiDevParam;
  322.     MultiDevParam = RECORD
  323.         qLink:                    QElemPtr;                                { queue link in header }
  324.         qType:                    INTEGER;                                { type byte for safety check }
  325.         ioTrap:                    INTEGER;                                { FS: the Trap }
  326.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  327.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  328.         ioResult:                OSErr;                                    { result code }
  329.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  330.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  331.         ioMRefNum:                INTEGER;
  332.         ioMVersNum:                SInt8;
  333.         ioMPermssn:                SInt8;
  334.         ioMMix:                    Ptr;
  335.         ioMFlags:                INTEGER;
  336.         ioSEBlkPtr:                Ptr;
  337.     END;
  338.  
  339.     ParamBlockRecPtr = ^ParamBlockRec;
  340.     ParamBlockRec = RECORD
  341.         qLink:                    QElemPtr;                                { queue link in header }
  342.         qType:                    INTEGER;                                { type byte for safety check }
  343.         ioTrap:                    INTEGER;                                { FS: the Trap }
  344.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  345.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  346.         ioResult:                OSErr;                                    { result code }
  347.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  348.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  349.         CASE INTEGER OF
  350.         0: (
  351.             ioRefNum:            INTEGER;                                { refNum for I/O operation }
  352.             ioVersNum:            SInt8;                                    { version number }
  353.             ioPermssn:            SInt8;                                    { Open: permissions (byte) }
  354.             ioMisc:                Ptr;                                    { Rename: new name (GetEOF,SetEOF: logical end of file) (Open: optional ptr to buffer) (SetFileType: new type) }
  355.             ioBuffer:            Ptr;                                    { data buffer Ptr }
  356.             ioReqCount:            LONGINT;                                { requested byte count; also = ioNewDirID }
  357.             ioActCount:            LONGINT;                                { actual byte count completed }
  358.             ioPosMode:            INTEGER;                                { initial file positioning }
  359.             ioPosOffset:        LONGINT;                                { file position offset }
  360.            );
  361.         1: (
  362.             ioFRefNum:            INTEGER;                                { reference number }
  363.             ioFVersNum:            SInt8;                                    { version number }
  364.             filler1:            SInt8;
  365.             ioFDirIndex:        INTEGER;                                { GetFInfo directory index }
  366.             ioFlAttrib:            SInt8;                                    { GetFInfo: in-use bit=7, lock bit=0 }
  367.             ioFlVersNum:        SInt8;                                    { file version number }
  368.             ioFlFndrInfo:        FInfo;                                    { user info }
  369.             ioFlNum:            LONGINT;                                { GetFInfo: file number; TF- ioDirID }
  370.             ioFlStBlk:            INTEGER;                                { start file block (0 if none) }
  371.             ioFlLgLen:            LONGINT;                                { logical length (EOF) }
  372.             ioFlPyLen:            LONGINT;                                { physical length }
  373.             ioFlRStBlk:            INTEGER;                                { start block rsrc fork }
  374.             ioFlRLgLen:            LONGINT;                                { file logical length rsrc fork }
  375.             ioFlRPyLen:            LONGINT;                                { file physical length rsrc fork }
  376.             ioFlCrDat:            LONGINT;                                { file creation date& time (32 bits in secs) }
  377.             ioFlMdDat:            LONGINT;                                { last modified date and time }
  378.            );
  379.         2: (
  380.             filler2:            LONGINT;
  381.             ioVolIndex:            INTEGER;                                { volume index number }
  382.             ioVCrDate:            LONGINT;                                { creation date and time }
  383.             ioVLsBkUp:            LONGINT;                                { last backup date and time }
  384.             ioVAtrb:            INTEGER;                                { volume attrib }
  385.             ioVNmFls:            INTEGER;                                { number of files in directory }
  386.             ioVDirSt:            INTEGER;                                { start block of file directory }
  387.             ioVBlLn:            INTEGER;                                { GetVolInfo: length of dir in blocks }
  388.             ioVNmAlBlks:        INTEGER;                                { for compatibilty ioVNmAlBlks * ioVAlBlkSiz <= 2 GB }
  389.             ioVAlBlkSiz:        LONGINT;                                { for compatibilty ioVAlBlkSiz is <= $0000FE00 (65,024) }
  390.             ioVClpSiz:            LONGINT;                                { GetVolInfo: bytes to allocate at a time }
  391.             ioAlBlSt:            INTEGER;                                { starting disk(512-byte) block in block map }
  392.             ioVNxtFNum:            LONGINT;                                { GetVolInfo: next free file number }
  393.             ioVFrBlk:            INTEGER;                                { GetVolInfo: # free alloc blks for this vol }
  394.            );
  395.         3: (
  396.             ioCRefNum:            INTEGER;                                { refNum for I/O operation }
  397.             csCode:                INTEGER;                                { word for control status code }
  398.             csParam:            ARRAY [0..10] OF INTEGER;                { operation-defined parameters }
  399.            );
  400.         4: (
  401.             ioSRefNum:            INTEGER;
  402.             ioSVersNum:            SInt8;
  403.             ioSPermssn:            SInt8;
  404.             ioSMix:                Ptr;
  405.             ioSFlags:            INTEGER;
  406.             ioSlot:                SInt8;
  407.             ioID:                SInt8;
  408.            );
  409.         5: (
  410.             ioMRefNum:            INTEGER;
  411.             ioMVersNum:            SInt8;
  412.             ioMPermssn:            SInt8;
  413.             ioMMix:                Ptr;
  414.             ioMFlags:            INTEGER;
  415.             ioSEBlkPtr:            Ptr;
  416.            );
  417.     END;
  418.  
  419.     CInfoPBRecPtr = ^CInfoPBRec;
  420.     CInfoPBRec = RECORD
  421.         qLink:                    QElemPtr;                                { queue link in header }
  422.         qType:                    INTEGER;                                { type byte for safety check }
  423.         ioTrap:                    INTEGER;                                { FS: the Trap }
  424.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  425.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  426.         ioResult:                OSErr;                                    { result code }
  427.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  428.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  429.         ioFRefNum:                INTEGER;
  430.         ioFVersNum:                SInt8;
  431.         filler1:                SInt8;
  432.         ioFDirIndex:            INTEGER;
  433.         ioFlAttrib:                SInt8;
  434.         ioACUser:                SInt8;
  435.         CASE INTEGER OF
  436.         0: (
  437.             ioFlFndrInfo:        FInfo;
  438.             ioDirID:            LONGINT;
  439.             ioFlStBlk:            INTEGER;
  440.             ioFlLgLen:            LONGINT;
  441.             ioFlPyLen:            LONGINT;
  442.             ioFlRStBlk:            INTEGER;
  443.             ioFlRLgLen:            LONGINT;
  444.             ioFlRPyLen:            LONGINT;
  445.             ioFlCrDat:            LONGINT;
  446.             ioFlMdDat:            LONGINT;
  447.             ioFlBkDat:            LONGINT;
  448.             ioFlXFndrInfo:        FXInfo;
  449.             ioFlParID:            LONGINT;
  450.             ioFlClpSiz:            LONGINT;
  451.            );
  452.         1: (
  453.             ioDrUsrWds:            DInfo;
  454.             ioDrDirID:            LONGINT;
  455.             ioDrNmFls:            INTEGER;
  456.             filler3:            ARRAY [1..9] OF INTEGER;
  457.             ioDrCrDat:            LONGINT;
  458.             ioDrMdDat:            LONGINT;
  459.             ioDrBkDat:            LONGINT;
  460.             ioDrFndrInfo:        DXInfo;
  461.             ioDrParID:            LONGINT;
  462.            );
  463.     END;
  464.  
  465.     CInfoPBPtr                            = ^CInfoPBRec;
  466.     XCInfoPBRecPtr = ^XCInfoPBRec;
  467.     XCInfoPBRec = RECORD
  468.         qLink:                    QElemPtr;
  469.         qType:                    INTEGER;
  470.         ioTrap:                    INTEGER;
  471.         ioCmdAddr:                Ptr;
  472.         ioCompletion:            ProcPtr;                                {  --> A pointer to a completion routine  }
  473.         ioResult:                OSErr;                                    {  --> The result code of the function  }
  474.         ioNamePtr:                StringPtr;                                {  --> Pointer to pathname to object  }
  475.         ioVRefNum:                INTEGER;                                {  --> A volume specification  }
  476.         filler1:                LONGINT;
  477.         ioShortNamePtr:            StringPtr;                                {  <-> A pointer to the short name string buffer - required!  }
  478.         filler2:                INTEGER;
  479.         ioPDType:                INTEGER;                                {  <-- The ProDOS file type  }
  480.         ioPDAuxType:            LONGINT;                                {  <-- The ProDOS aux type  }
  481.         filler3:                ARRAY [0..1] OF LONGINT;
  482.         ioDirID:                LONGINT;                                {  --> A directory ID  }
  483.     END;
  484.  
  485.     XCInfoPBPtr                            = ^XCInfoPBRec;
  486. { Catalog position record }
  487.     CatPositionRecPtr = ^CatPositionRec;
  488.     CatPositionRec = RECORD
  489.         initialize:                LONGINT;
  490.         priv:                    ARRAY [1..6] OF INTEGER;
  491.     END;
  492.  
  493.     FSSpecPtr = ^FSSpec;
  494.     FSSpec = RECORD
  495.         vRefNum:                INTEGER;
  496.         parID:                    LONGINT;
  497.         name:                    Str63;
  498.     END;
  499.  
  500.     FSSpecHandle                        = ^FSSpecPtr;
  501. { pointer to array of FSSpecs }
  502.     FSSpecArray                            = ARRAY [0..0] OF FSSpec;
  503.     FSSpecArrayPtr                        = ^FSSpecArray;
  504.     The only difference between "const FSSpec*" and "ConstFSSpecPtr" is 
  505.     that as a parameter, ConstFSSpecPtr is allowed to be NULL 
  506. }
  507.     ConstFSSpecPtr                        = ^FSSpec;
  508.  
  509.     The following are structures to be filled out with the _PBGetVolMountInfo call
  510.     and passed back into the _PBVolumeMount call for external file system mounts. 
  511. }
  512. { the "signature" of the file system }
  513.     VolumeType                            = OSType;
  514.  
  515. CONST
  516.                                                                 {  the signature for AppleShare  }
  517.     AppleShareMediaType            = 'afpm';
  518.  
  519. {
  520.     VolMount stuff was once in FSM.≈
  521. }
  522.  
  523. TYPE
  524.     VolMountInfoHeaderPtr = ^VolMountInfoHeader;
  525.     VolMountInfoHeader = RECORD
  526.         length:                    INTEGER;                                {  length of location data (including self)  }
  527.         media:                    VolumeType;                                {  type of media.  Variable length data follows  }
  528.     END;
  529.  
  530.     VolMountInfoPtr                        = ^VolMountInfoHeader;
  531. { The new volume mount info record.  The old one is included for compatibility. 
  532.     the new record allows access by foriegn filesystems writers to the flags 
  533.     portion of the record. This portion is now public.  
  534. }
  535.     VolumeMountInfoHeaderPtr = ^VolumeMountInfoHeader;
  536.     VolumeMountInfoHeader = RECORD
  537.         length:                    INTEGER;                                {  length of location data (including self)  }
  538.         media:                    VolumeType;                                {  type of media (must be registered with Apple)  }
  539.         flags:                    INTEGER;                                {  volume mount flags. Variable length data follows  }
  540.     END;
  541.  
  542. { volume mount flags }
  543.  
  544. CONST
  545.     volMountNoLoginMsgFlagBit    = 0;                            {  Input to VolumeMount: If set, the file system  }
  546.     volMountNoLoginMsgFlagMask    = $0001;                        {   should suppresss any log-in message/greeting dialog  }
  547.     volMountExtendedFlagsBit    = 7;                            {  Input to VolumeMount: If set, the mount info is a  }
  548.     volMountExtendedFlagsMask    = $0080;                        {   AFPXVolMountInfo record for 3.7 AppleShare Client  }
  549.     volMountInteractBit            = 15;                            {  Input to VolumeMount: If set, it's OK for the file system  }
  550.     volMountInteractMask        = $8000;                        {   to perform user interaction to mount the volume  }
  551.     volMountChangedBit            = 14;                            {  Output from VoumeMount: If set, the volume was mounted, but  }
  552.     volMountChangedMask            = $4000;                        {   the volume mounting information record needs to be updated.  }
  553.     volMountFSReservedMask        = $00FF;                        {  bits 0-7 are defined by each file system for its own use  }
  554.     volMountSysReservedMask        = $FF00;                        {  bits 8-15 are reserved for Apple system use  }
  555.  
  556.  
  557.  
  558.  
  559. TYPE
  560.     AFPVolMountInfoPtr = ^AFPVolMountInfo;
  561.     AFPVolMountInfo = RECORD
  562.         length:                    INTEGER;                                {  length of location data (including self)  }
  563.         media:                    VolumeType;                                {  type of media  }
  564.         flags:                    INTEGER;                                {  bits for no messages, no reconnect  }
  565.         nbpInterval:            SInt8;                                    {  NBP Interval parameter (IM2, p.322)  }
  566.         nbpCount:                SInt8;                                    {  NBP Interval parameter (IM2, p.322)  }
  567.         uamType:                INTEGER;                                {  User Authentication Method  }
  568.         zoneNameOffset:            INTEGER;                                {  short positive offset from start of struct to Zone Name  }
  569.         serverNameOffset:        INTEGER;                                {  offset to pascal Server Name string  }
  570.         volNameOffset:            INTEGER;                                {  offset to pascal Volume Name string  }
  571.         userNameOffset:            INTEGER;                                {  offset to pascal User Name string  }
  572.         userPasswordOffset:        INTEGER;                                {  offset to pascal User Password string  }
  573.         volPasswordOffset:        INTEGER;                                {  offset to pascal Volume Password string  }
  574.         AFPData:                PACKED ARRAY [1..144] OF CHAR;            {  variable length data may follow  }
  575.     END;
  576.  
  577.  
  578.  
  579. { AFPXVolMountInfo is the new AFP volume mount info record, requires the 3.7 AppleShare Client }
  580.     AFPXVolMountInfoPtr = ^AFPXVolMountInfo;
  581.     AFPXVolMountInfo = RECORD
  582.         length:                    INTEGER;                                {  length of location data (including self)  }
  583.         media:                    VolumeType;                                {  type of media  }
  584.         flags:                    INTEGER;                                {  bits for no messages, no reconnect  }
  585.         nbpInterval:            SInt8;                                    {  NBP Interval parameter (IM2, p.322)  }
  586.         nbpCount:                SInt8;                                    {  NBP Interval parameter (IM2, p.322)  }
  587.         uamType:                INTEGER;                                {  User Authentication Method type  }
  588.         zoneNameOffset:            INTEGER;                                {  short positive offset from start of struct to Zone Name  }
  589.         serverNameOffset:        INTEGER;                                {  offset to pascal Server Name string  }
  590.         volNameOffset:            INTEGER;                                {  offset to pascal Volume Name string  }
  591.         userNameOffset:            INTEGER;                                {  offset to pascal User Name string  }
  592.         userPasswordOffset:        INTEGER;                                {  offset to pascal User Password string  }
  593.         volPasswordOffset:        INTEGER;                                {  offset to pascal Volume Password string  }
  594.         extendedFlags:            INTEGER;                                {  extended flags word  }
  595.         uamNameOffset:            INTEGER;                                {  offset to a pascal UAM name string  }
  596.         alternateAddressOffset:    INTEGER;                                {  offset to Alternate Addresses in tagged format  }
  597.         AFPData:                PACKED ARRAY [1..176] OF CHAR;            {  variable length data may follow  }
  598.     END;
  599.  
  600.  
  601. CONST
  602.     kAFPExtendedFlagsAlternateAddressMask = 1;                    {   bit in AFPXVolMountInfo.extendedFlags that means alternateAddressOffset is used }
  603.  
  604.  
  605.                                                                 {  constants for use in AFPTagData.fType field }
  606.     kAFPTagTypeIP                = $01;
  607.     kAFPTagTypeIPPort            = $02;
  608.     kAFPTagTypeDDP                = $03;                            {  Currently unused }
  609.  
  610.  
  611.                                                                 {  constants for use in AFPTagData.fLength field }
  612.     kAFPTagLengthIP                = $06;
  613.     kAFPTagLengthIPPort            = $08;
  614.     kAFPTagLengthDDP            = $06;
  615.  
  616.  
  617. TYPE
  618.     AFPTagDataPtr = ^AFPTagData;
  619.     AFPTagData = PACKED RECORD
  620.         fLength:                UInt8;                                    {  length of this data tag including the fLength field  }
  621.         fType:                    UInt8;
  622.         fData:                    PACKED ARRAY [0..0] OF UInt8;            {  variable length data  }
  623.     END;
  624.  
  625.     AFPAlternateAddressPtr = ^AFPAlternateAddress;
  626.     AFPAlternateAddress = PACKED RECORD
  627.         fAddressCount:            UInt8;
  628.         fAddressList:            PACKED ARRAY [0..0] OF UInt8;            {  actually variable length packed set of AFPTagData  }
  629.     END;
  630.  
  631.  
  632.  
  633.     DTPBRecPtr = ^DTPBRec;
  634.     DTPBRec = RECORD
  635.         qLink:                    QElemPtr;                                { queue link in header }
  636.         qType:                    INTEGER;                                { type byte for safety check }
  637.         ioTrap:                    INTEGER;                                { FS: the Trap }
  638.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  639.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  640.         ioResult:                OSErr;                                    { result code }
  641.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  642.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  643.         ioDTRefNum:                INTEGER;                                {  desktop refnum  }
  644.         ioIndex:                INTEGER;
  645.         ioTagInfo:                LONGINT;
  646.         ioDTBuffer:                Ptr;
  647.         ioDTReqCount:            LONGINT;
  648.         ioDTActCount:            LONGINT;
  649.         ioFiller1:                SInt8;
  650.         ioIconType:                SInt8;
  651.         ioFiller2:                INTEGER;
  652.         ioDirID:                LONGINT;
  653.         ioFileCreator:            OSType;
  654.         ioFileType:                OSType;
  655.         ioFiller3:                LONGINT;
  656.         ioDTLgLen:                LONGINT;
  657.         ioDTPyLen:                LONGINT;
  658.         ioFiller4:                ARRAY [1..14] OF INTEGER;
  659.         ioAPPLParID:            LONGINT;
  660.     END;
  661.  
  662.     DTPBPtr                                = ^DTPBRec;
  663.     HIOParamPtr = ^HIOParam;
  664.     HIOParam = RECORD
  665.         qLink:                    QElemPtr;                                { queue link in header }
  666.         qType:                    INTEGER;                                { type byte for safety check }
  667.         ioTrap:                    INTEGER;                                { FS: the Trap }
  668.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  669.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  670.         ioResult:                OSErr;                                    { result code }
  671.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  672.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  673.         ioRefNum:                INTEGER;
  674.         ioVersNum:                SInt8;
  675.         ioPermssn:                SInt8;
  676.         ioMisc:                    Ptr;
  677.         ioBuffer:                Ptr;
  678.         ioReqCount:                LONGINT;
  679.         ioActCount:                LONGINT;
  680.         ioPosMode:                INTEGER;
  681.         ioPosOffset:            LONGINT;
  682.     END;
  683.  
  684.     HFileParamPtr = ^HFileParam;
  685.     HFileParam = RECORD
  686.         qLink:                    QElemPtr;                                { queue link in header }
  687.         qType:                    INTEGER;                                { type byte for safety check }
  688.         ioTrap:                    INTEGER;                                { FS: the Trap }
  689.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  690.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  691.         ioResult:                OSErr;                                    { result code }
  692.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  693.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  694.         ioFRefNum:                INTEGER;
  695.         ioFVersNum:                SInt8;
  696.         filler1:                SInt8;
  697.         ioFDirIndex:            INTEGER;
  698.         ioFlAttrib:                SInt8;
  699.         ioFlVersNum:            SInt8;
  700.         ioFlFndrInfo:            FInfo;
  701.         ioDirID:                LONGINT;
  702.         ioFlStBlk:                INTEGER;
  703.         ioFlLgLen:                LONGINT;
  704.         ioFlPyLen:                LONGINT;
  705.         ioFlRStBlk:                INTEGER;
  706.         ioFlRLgLen:                LONGINT;
  707.         ioFlRPyLen:                LONGINT;
  708.         ioFlCrDat:                LONGINT;
  709.         ioFlMdDat:                LONGINT;
  710.     END;
  711.  
  712.     HVolumeParamPtr = ^HVolumeParam;
  713.     HVolumeParam = RECORD
  714.         qLink:                    QElemPtr;                                { queue link in header }
  715.         qType:                    INTEGER;                                { type byte for safety check }
  716.         ioTrap:                    INTEGER;                                { FS: the Trap }
  717.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  718.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  719.         ioResult:                OSErr;                                    { result code }
  720.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  721.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  722.         filler2:                LONGINT;
  723.         ioVolIndex:                INTEGER;
  724.         ioVCrDate:                LONGINT;
  725.         ioVLsMod:                LONGINT;
  726.         ioVAtrb:                INTEGER;
  727.         ioVNmFls:                INTEGER;
  728.         ioVBitMap:                INTEGER;
  729.         ioAllocPtr:                INTEGER;
  730.         ioVNmAlBlks:            INTEGER;
  731.         ioVAlBlkSiz:            LONGINT;
  732.         ioVClpSiz:                LONGINT;
  733.         ioAlBlSt:                INTEGER;
  734.         ioVNxtCNID:                LONGINT;
  735.         ioVFrBlk:                INTEGER;
  736.         ioVSigWord:                INTEGER;
  737.         ioVDrvInfo:                INTEGER;
  738.         ioVDRefNum:                INTEGER;
  739.         ioVFSID:                INTEGER;
  740.         ioVBkUp:                LONGINT;
  741.         ioVSeqNum:                INTEGER;
  742.         ioVWrCnt:                LONGINT;
  743.         ioVFilCnt:                LONGINT;
  744.         ioVDirCnt:                LONGINT;
  745.         ioVFndrInfo:            ARRAY [1..8] OF LONGINT;
  746.     END;
  747.  
  748.  
  749. CONST
  750.                                                                 {  Large Volume Constants  }
  751.     kWidePosOffsetBit            = 8;
  752.     kMaximumBlocksIn4GB            = $007FFFFF;
  753.  
  754.  
  755. TYPE
  756.     XIOParamPtr = ^XIOParam;
  757.     XIOParam = RECORD
  758.         qLink:                    QElemPtr;
  759.         qType:                    INTEGER;
  760.         ioTrap:                    INTEGER;
  761.         ioCmdAddr:                Ptr;
  762.         ioCompletion:            IOCompletionUPP;
  763.         ioResult:                OSErr;
  764.         ioNamePtr:                StringPtr;
  765.         ioVRefNum:                INTEGER;
  766.         ioRefNum:                INTEGER;
  767.         ioVersNum:                SInt8;
  768.         ioPermssn:                SInt8;
  769.         ioMisc:                    Ptr;
  770.         ioBuffer:                Ptr;
  771.         ioReqCount:                LONGINT;
  772.         ioActCount:                LONGINT;
  773.         ioPosMode:                INTEGER;                                {  must have kUseWidePositioning bit set  }
  774.         ioWPosOffset:            wide;                                    {  wide positioning offset  }
  775.     END;
  776.  
  777.     XVolumeParamPtr = ^XVolumeParam;
  778.     XVolumeParam = RECORD
  779.         qLink:                    QElemPtr;
  780.         qType:                    INTEGER;
  781.         ioTrap:                    INTEGER;
  782.         ioCmdAddr:                Ptr;
  783.         ioCompletion:            IOCompletionUPP;
  784.         ioResult:                OSErr;
  785.         ioNamePtr:                StringPtr;
  786.         ioVRefNum:                INTEGER;
  787.         ioXVersion:                LONGINT;                                {  this XVolumeParam version (0)  }
  788.         ioVolIndex:                INTEGER;
  789.         ioVCrDate:                LONGINT;
  790.         ioVLsMod:                LONGINT;
  791.         ioVAtrb:                INTEGER;
  792.         ioVNmFls:                INTEGER;
  793.         ioVBitMap:                INTEGER;
  794.         ioAllocPtr:                INTEGER;
  795.         ioVNmAlBlks:            INTEGER;
  796.         ioVAlBlkSiz:            LONGINT;
  797.         ioVClpSiz:                LONGINT;
  798.         ioAlBlSt:                INTEGER;
  799.         ioVNxtCNID:                LONGINT;
  800.         ioVFrBlk:                INTEGER;
  801.         ioVSigWord:                INTEGER;
  802.         ioVDrvInfo:                INTEGER;
  803.         ioVDRefNum:                INTEGER;
  804.         ioVFSID:                INTEGER;
  805.         ioVBkUp:                LONGINT;
  806.         ioVSeqNum:                INTEGER;
  807.         ioVWrCnt:                LONGINT;
  808.         ioVFilCnt:                LONGINT;
  809.         ioVDirCnt:                LONGINT;
  810.         ioVFndrInfo:            ARRAY [1..8] OF LONGINT;
  811.         ioVTotalBytes:            UnsignedWide;                            {  total number of bytes on volume  }
  812.         ioVFreeBytes:            UnsignedWide;                            {  number of free bytes on volume  }
  813.     END;
  814.  
  815.     AccessParamPtr = ^AccessParam;
  816.     AccessParam = RECORD
  817.         qLink:                    QElemPtr;                                { queue link in header }
  818.         qType:                    INTEGER;                                { type byte for safety check }
  819.         ioTrap:                    INTEGER;                                { FS: the Trap }
  820.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  821.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  822.         ioResult:                OSErr;                                    { result code }
  823.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  824.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  825.         filler3:                INTEGER;
  826.         ioDenyModes:            INTEGER;                                { access rights data }
  827.         filler4:                INTEGER;
  828.         filler5:                SInt8;
  829.         ioACUser:                SInt8;                                    { access rights for directory only }
  830.         filler6:                LONGINT;
  831.         ioACOwnerID:            LONGINT;                                { owner ID }
  832.         ioACGroupID:            LONGINT;                                { group ID }
  833.         ioACAccess:                LONGINT;                                { access rights }
  834.         ioDirID:                LONGINT;
  835.     END;
  836.  
  837.     ObjParamPtr = ^ObjParam;
  838.     ObjParam = RECORD
  839.         qLink:                    QElemPtr;                                { queue link in header }
  840.         qType:                    INTEGER;                                { type byte for safety check }
  841.         ioTrap:                    INTEGER;                                { FS: the Trap }
  842.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  843.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  844.         ioResult:                OSErr;                                    { result code }
  845.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  846.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  847.         filler7:                INTEGER;
  848.         ioObjType:                INTEGER;                                { function code }
  849.         ioObjNamePtr:            StringPtr;                                { ptr to returned creator/group name }
  850.         ioObjID:                LONGINT;                                { creator/group ID }
  851.     END;
  852.  
  853.     CopyParamPtr = ^CopyParam;
  854.     CopyParam = RECORD
  855.         qLink:                    QElemPtr;                                { queue link in header }
  856.         qType:                    INTEGER;                                { type byte for safety check }
  857.         ioTrap:                    INTEGER;                                { FS: the Trap }
  858.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  859.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  860.         ioResult:                OSErr;                                    { result code }
  861.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  862.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  863.         ioDstVRefNum:            INTEGER;                                { destination vol identifier }
  864.         filler8:                INTEGER;
  865.         ioNewName:                StringPtr;                                { ptr to destination pathname }
  866.         ioCopyName:                StringPtr;                                { ptr to optional name }
  867.         ioNewDirID:                LONGINT;                                { destination directory ID }
  868.         filler14:                LONGINT;
  869.         filler15:                LONGINT;
  870.         ioDirID:                LONGINT;
  871.     END;
  872.  
  873.     WDParamPtr = ^WDParam;
  874.     WDParam = RECORD
  875.         qLink:                    QElemPtr;                                { queue link in header }
  876.         qType:                    INTEGER;                                { type byte for safety check }
  877.         ioTrap:                    INTEGER;                                { FS: the Trap }
  878.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  879.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  880.         ioResult:                OSErr;                                    { result code }
  881.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  882.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  883.         filler9:                INTEGER;
  884.         ioWDIndex:                INTEGER;
  885.         ioWDProcID:                LONGINT;
  886.         ioWDVRefNum:            INTEGER;
  887.         filler10:                INTEGER;
  888.         filler11:                LONGINT;
  889.         filler12:                LONGINT;
  890.         filler13:                LONGINT;
  891.         ioWDDirID:                LONGINT;
  892.     END;
  893.  
  894.     FIDParamPtr = ^FIDParam;
  895.     FIDParam = RECORD
  896.         qLink:                    QElemPtr;                                { queue link in header }
  897.         qType:                    INTEGER;                                { type byte for safety check }
  898.         ioTrap:                    INTEGER;                                { FS: the Trap }
  899.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  900.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  901.         ioResult:                OSErr;                                    { result code }
  902.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  903.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  904.         filler14:                LONGINT;
  905.         ioDestNamePtr:            StringPtr;                                {  dest file name  }
  906.         filler15:                LONGINT;
  907.         ioDestDirID:            LONGINT;                                {  dest file's directory id  }
  908.         filler16:                LONGINT;
  909.         filler17:                LONGINT;
  910.         ioSrcDirID:                LONGINT;                                {  source file's directory id  }
  911.         filler18:                INTEGER;
  912.         ioFileID:                LONGINT;                                {  file ID  }
  913.     END;
  914.  
  915.     ForeignPrivParamPtr = ^ForeignPrivParam;
  916.     ForeignPrivParam = RECORD
  917.         qLink:                    QElemPtr;                                { queue link in header }
  918.         qType:                    INTEGER;                                { type byte for safety check }
  919.         ioTrap:                    INTEGER;                                { FS: the Trap }
  920.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  921.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  922.         ioResult:                OSErr;                                    { result code }
  923.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  924.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  925.         ioFiller21:                LONGINT;
  926.         ioFiller22:                LONGINT;
  927.         ioForeignPrivBuffer:    Ptr;
  928.         ioForeignPrivActCount:    LONGINT;
  929.         ioForeignPrivReqCount:    LONGINT;
  930.         ioFiller23:                LONGINT;
  931.         ioForeignPrivDirID:        LONGINT;
  932.         ioForeignPrivInfo1:        LONGINT;
  933.         ioForeignPrivInfo2:        LONGINT;
  934.         ioForeignPrivInfo3:        LONGINT;
  935.         ioForeignPrivInfo4:        LONGINT;
  936.     END;
  937.  
  938.     CSParamPtr = ^CSParam;
  939.     CSParam = RECORD
  940.         qLink:                    QElemPtr;                                { queue link in header }
  941.         qType:                    INTEGER;                                { type byte for safety check }
  942.         ioTrap:                    INTEGER;                                { FS: the Trap }
  943.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  944.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  945.         ioResult:                OSErr;                                    { result code }
  946.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  947.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  948.         ioMatchPtr:                FSSpecPtr;                                {  match array  }
  949.         ioReqMatchCount:        LONGINT;                                {  maximum allowable matches  }
  950.         ioActMatchCount:        LONGINT;                                {  actual match count  }
  951.         ioSearchBits:            LONGINT;                                {  search criteria selector  }
  952.         ioSearchInfo1:            CInfoPBPtr;                                {  search values and range lower bounds  }
  953.         ioSearchInfo2:            CInfoPBPtr;                                {  search values and range upper bounds  }
  954.         ioSearchTime:            LONGINT;                                {  length of time to run search  }
  955.         ioCatPosition:            CatPositionRec;                            {  current position in the catalog  }
  956.         ioOptBuffer:            Ptr;                                    {  optional performance enhancement buffer  }
  957.         ioOptBufSize:            LONGINT;                                {  size of buffer pointed to by ioOptBuffer  }
  958.     END;
  959.  
  960.     HParamBlockRecPtr = ^HParamBlockRec;
  961.     HParamBlockRec = RECORD
  962.         qLink:                    QElemPtr;                                { queue link in header }
  963.         qType:                    INTEGER;                                { type byte for safety check }
  964.         ioTrap:                    INTEGER;                                { FS: the Trap }
  965.         ioCmdAddr:                Ptr;                                    { FS: address to dispatch to }
  966.         ioCompletion:            IOCompletionUPP;                        { completion routine addr (0 for synch calls) }
  967.         ioResult:                OSErr;                                    { result code }
  968.         ioNamePtr:                StringPtr;                                { ptr to Vol:FileName string }
  969.         ioVRefNum:                INTEGER;                                { volume refnum (DrvNum for Eject and MountVol) }
  970.         CASE INTEGER OF
  971.         0: (
  972.             ioRefNum:            INTEGER;
  973.             ioVersNum:            SInt8;
  974.             ioPermssn:            SInt8;
  975.             ioMisc:                Ptr;
  976.             ioBuffer:            Ptr;
  977.             ioReqCount:            LONGINT;
  978.             ioActCount:            LONGINT;
  979.             ioPosMode:            INTEGER;
  980.             ioPosOffset:        LONGINT;
  981.            );
  982.         1: (
  983.             ioFRefNum:            INTEGER;
  984.             ioFVersNum:            SInt8;
  985.             filler1:            SInt8;
  986.             ioFDirIndex:        INTEGER;
  987.             ioFlAttrib:            SInt8;
  988.             ioFlVersNum:        SInt8;
  989.             ioFlFndrInfo:        FInfo;
  990.             ioDirID:            LONGINT;
  991.             ioFlStBlk:            INTEGER;
  992.             ioFlLgLen:            LONGINT;
  993.             ioFlPyLen:            LONGINT;
  994.             ioFlRStBlk:            INTEGER;
  995.             ioFlRLgLen:            LONGINT;
  996.             ioFlRPyLen:            LONGINT;
  997.             ioFlCrDat:            LONGINT;
  998.             ioFlMdDat:            LONGINT;
  999.            );
  1000.         2: (
  1001.             filler2:            LONGINT;
  1002.             ioVolIndex:            INTEGER;
  1003.             ioVCrDate:            LONGINT;
  1004.             ioVLsMod:            LONGINT;
  1005.             ioVAtrb:            INTEGER;
  1006.             ioVNmFls:            INTEGER;
  1007.             ioVBitMap:            INTEGER;
  1008.             ioAllocPtr:            INTEGER;
  1009.             ioVNmAlBlks:        INTEGER;
  1010.             ioVAlBlkSiz:        LONGINT;
  1011.             ioVClpSiz:            LONGINT;
  1012.             ioAlBlSt:            INTEGER;
  1013.             ioVNxtCNID:            LONGINT;
  1014.             ioVFrBlk:            INTEGER;
  1015.             ioVSigWord:            INTEGER;
  1016.             ioVDrvInfo:            INTEGER;
  1017.             ioVDRefNum:            INTEGER;
  1018.             ioVFSID:            INTEGER;
  1019.             ioVBkUp:            LONGINT;
  1020.             ioVSeqNum:            INTEGER;
  1021.             ioVWrCnt:            LONGINT;
  1022.             ioVFilCnt:            LONGINT;
  1023.             ioVDirCnt:            LONGINT;
  1024.             ioVFndrInfo:        ARRAY [1..8] OF LONGINT;
  1025.            );
  1026.         3: (
  1027.             filler3:            INTEGER;
  1028.             ioDenyModes:        INTEGER;                                { access rights data }
  1029.             filler4:            INTEGER;
  1030.             filler5:            SInt8;
  1031.             ioACUser:            SInt8;                                    { access rights for directory only }
  1032.             filler6:            LONGINT;
  1033.             ioACOwnerID:        LONGINT;                                { owner ID }
  1034.             ioACGroupID:        LONGINT;                                { group ID }
  1035.             ioACAccess:            LONGINT;                                { access rights }
  1036.            );
  1037.         4: (
  1038.             filler7:            INTEGER;
  1039.             ioObjType:            INTEGER;                                { function code }
  1040.             ioObjNamePtr:        StringPtr;                                { ptr to returned creator/group name }
  1041.             ioObjID:            LONGINT;                                { creator/group ID }
  1042.            );
  1043.         5: (
  1044.             ioDstVRefNum:        INTEGER;                                { destination vol identifier }
  1045.             filler8:            INTEGER;
  1046.             ioNewName:            StringPtr;                                { ptr to destination pathname }
  1047.             ioCopyName:            StringPtr;                                { ptr to optional name }
  1048.             ioNewDirID:            LONGINT;                                { destination directory ID }
  1049.            );
  1050.         6: (
  1051.             filler9:            INTEGER;
  1052.             ioWDIndex:            INTEGER;
  1053.             ioWDProcID:            LONGINT;
  1054.             ioWDVRefNum:        INTEGER;
  1055.             filler10:            INTEGER;
  1056.             filler11:            LONGINT;
  1057.             filler12:            LONGINT;
  1058.             filler13:            LONGINT;
  1059.             ioWDDirID:            LONGINT;
  1060.            );
  1061.         7: (
  1062.             filler14:            LONGINT;
  1063.             ioDestNamePtr:        StringPtr;                                {  dest file name  }
  1064.             filler15:            LONGINT;
  1065.             ioDestDirID:        LONGINT;                                {  dest file's directory id  }
  1066.             filler16:            LONGINT;
  1067.             filler17:            LONGINT;
  1068.             ioSrcDirID:            LONGINT;                                {  source file's directory id  }
  1069.             filler18:            INTEGER;
  1070.             ioFileID:            LONGINT;                                {  file ID  }
  1071.            );
  1072.         8: (
  1073.             ioMatchPtr:            FSSpecPtr;                                {  match array  }
  1074.             ioReqMatchCount:    LONGINT;                                {  maximum allowable matches  }
  1075.             ioActMatchCount:    LONGINT;                                {  actual match count  }
  1076.             ioSearchBits:        LONGINT;                                {  search criteria selector  }
  1077.             ioSearchInfo1:        CInfoPBPtr;                                {  search values and range lower bounds  }
  1078.             ioSearchInfo2:        CInfoPBPtr;                                {  search values and range upper bounds  }
  1079.             ioSearchTime:        LONGINT;                                {  length of time to run search  }
  1080.             ioCatPosition:        CatPositionRec;                            {  current position in the catalog  }
  1081.             ioOptBuffer:        Ptr;                                    {  optional performance enhancement buffer  }
  1082.             ioOptBufSize:        LONGINT;                                {  size of buffer pointed to by ioOptBuffer  }
  1083.            );
  1084.         9: (
  1085.             ioFiller21:            LONGINT;
  1086.             ioFiller22:            LONGINT;
  1087.             ioForeignPrivBuffer: Ptr;
  1088.             ioForeignPrivActCount: LONGINT;
  1089.             ioForeignPrivReqCount: LONGINT;
  1090.             ioFiller23:            LONGINT;
  1091.             ioForeignPrivDirID:    LONGINT;
  1092.             ioForeignPrivInfo1:    LONGINT;
  1093.             ioForeignPrivInfo2:    LONGINT;
  1094.             ioForeignPrivInfo3:    LONGINT;
  1095.             ioForeignPrivInfo4:    LONGINT;
  1096.            );
  1097.     END;
  1098.  
  1099.     HParmBlkPtr                            = ^HParamBlockRec;
  1100.  
  1101.     CMovePBRecPtr = ^CMovePBRec;
  1102.     CMovePBRec = RECORD
  1103.         qLink:                    QElemPtr;
  1104.         qType:                    INTEGER;
  1105.         ioTrap:                    INTEGER;
  1106.         ioCmdAddr:                Ptr;
  1107.         ioCompletion:            IOCompletionUPP;
  1108.         ioResult:                OSErr;
  1109.         ioNamePtr:                StringPtr;
  1110.         ioVRefNum:                INTEGER;
  1111.         filler1:                LONGINT;
  1112.         ioNewName:                StringPtr;
  1113.         filler2:                LONGINT;
  1114.         ioNewDirID:                LONGINT;
  1115.         filler3:                ARRAY [1..2] OF LONGINT;
  1116.         ioDirID:                LONGINT;
  1117.     END;
  1118.  
  1119.     CMovePBPtr                            = ^CMovePBRec;
  1120.     WDPBRecPtr = ^WDPBRec;
  1121.     WDPBRec = RECORD
  1122.         qLink:                    QElemPtr;
  1123.         qType:                    INTEGER;
  1124.         ioTrap:                    INTEGER;
  1125.         ioCmdAddr:                Ptr;
  1126.         ioCompletion:            IOCompletionUPP;
  1127.         ioResult:                OSErr;
  1128.         ioNamePtr:                StringPtr;
  1129.         ioVRefNum:                INTEGER;
  1130.         filler1:                INTEGER;
  1131.         ioWDIndex:                INTEGER;
  1132.         ioWDProcID:                LONGINT;
  1133.         ioWDVRefNum:            INTEGER;
  1134.         filler2:                ARRAY [1..7] OF INTEGER;
  1135.         ioWDDirID:                LONGINT;
  1136.     END;
  1137.  
  1138.     WDPBPtr                                = ^WDPBRec;
  1139.     FCBPBRecPtr = ^FCBPBRec;
  1140.     FCBPBRec = RECORD
  1141.         qLink:                    QElemPtr;
  1142.         qType:                    INTEGER;
  1143.         ioTrap:                    INTEGER;
  1144.         ioCmdAddr:                Ptr;
  1145.         ioCompletion:            IOCompletionUPP;
  1146.         ioResult:                OSErr;
  1147.         ioNamePtr:                StringPtr;
  1148.         ioVRefNum:                INTEGER;
  1149.         ioRefNum:                INTEGER;
  1150.         filler:                    INTEGER;
  1151.         ioFCBIndx:                INTEGER;
  1152.         filler1:                INTEGER;
  1153.         ioFCBFlNm:                LONGINT;
  1154.         ioFCBFlags:                INTEGER;
  1155.         ioFCBStBlk:                INTEGER;
  1156.         ioFCBEOF:                LONGINT;
  1157.         ioFCBPLen:                LONGINT;
  1158.         ioFCBCrPs:                LONGINT;
  1159.         ioFCBVRefNum:            INTEGER;
  1160.         ioFCBClpSiz:            LONGINT;
  1161.         ioFCBParID:                LONGINT;
  1162.     END;
  1163.  
  1164.     FCBPBPtr                            = ^FCBPBRec;
  1165.     VCBPtr = ^VCB;
  1166.     VCB = RECORD
  1167.         qLink:                    QElemPtr;
  1168.         qType:                    INTEGER;
  1169.         vcbFlags:                INTEGER;
  1170.         vcbSigWord:                INTEGER;
  1171.         vcbCrDate:                LONGINT;
  1172.         vcbLsMod:                LONGINT;
  1173.         vcbAtrb:                INTEGER;
  1174.         vcbNmFls:                INTEGER;
  1175.         vcbVBMSt:                INTEGER;
  1176.         vcbAllocPtr:            INTEGER;
  1177.         vcbNmAlBlks:            INTEGER;
  1178.         vcbAlBlkSiz:            LONGINT;
  1179.         vcbClpSiz:                LONGINT;
  1180.         vcbAlBlSt:                INTEGER;
  1181.         vcbNxtCNID:                LONGINT;
  1182.         vcbFreeBks:                INTEGER;
  1183.         vcbVN:                    Str27;
  1184.         vcbDrvNum:                INTEGER;
  1185.         vcbDRefNum:                INTEGER;
  1186.         vcbFSID:                INTEGER;
  1187.         vcbVRefNum:                INTEGER;
  1188.         vcbMAdr:                Ptr;
  1189.         vcbBufAdr:                Ptr;
  1190.         vcbMLen:                INTEGER;
  1191.         vcbDirIndex:            INTEGER;
  1192.         vcbDirBlk:                INTEGER;
  1193.         vcbVolBkUp:                LONGINT;
  1194.         vcbVSeqNum:                INTEGER;
  1195.         vcbWrCnt:                LONGINT;
  1196.         vcbXTClpSiz:            LONGINT;
  1197.         vcbCTClpSiz:            LONGINT;
  1198.         vcbNmRtDirs:            INTEGER;
  1199.         vcbFilCnt:                LONGINT;
  1200.         vcbDirCnt:                LONGINT;
  1201.         vcbFndrInfo:            ARRAY [1..8] OF LONGINT;
  1202.         vcbVCSize:                INTEGER;
  1203.         vcbVBMCSiz:                INTEGER;
  1204.         vcbCtlCSiz:                INTEGER;
  1205.         vcbXTAlBlks:            INTEGER;
  1206.         vcbCTAlBlks:            INTEGER;
  1207.         vcbXTRef:                INTEGER;
  1208.         vcbCTRef:                INTEGER;
  1209.         vcbCtlBuf:                Ptr;
  1210.         vcbDirIDM:                LONGINT;
  1211.         vcbOffsM:                INTEGER;
  1212.     END;
  1213.  
  1214.     DrvQElPtr = ^DrvQEl;
  1215.     DrvQEl = RECORD
  1216.         qLink:                    QElemPtr;
  1217.         qType:                    INTEGER;
  1218.         dQDrive:                INTEGER;
  1219.         dQRefNum:                INTEGER;
  1220.         dQFSID:                    INTEGER;
  1221.         dQDrvSz:                INTEGER;
  1222.         dQDrvSz2:                INTEGER;
  1223.     END;
  1224.  
  1225.  
  1226. CONST
  1227.     uppIOCompletionProcInfo = $00009802;
  1228.  
  1229. FUNCTION NewIOCompletionProc(userRoutine: IOCompletionProcPtr): IOCompletionUPP;
  1230.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1231.     INLINE $2E9F;
  1232.     {$ENDC}
  1233.  
  1234. PROCEDURE CallIOCompletionProc(paramBlock: ParmBlkPtr; userRoutine: IOCompletionUPP);
  1235.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1236.     {To be implemented:  Glue to move parameters into registers.}
  1237.     {$ENDC}
  1238. {$IFC OLDROUTINELOCATIONS }
  1239. FUNCTION PBOpenSync(paramBlock: ParmBlkPtr): OSErr;
  1240.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1241.     INLINE $205F, $A000, $3E80;
  1242.     {$ENDC}
  1243. FUNCTION PBOpenAsync(paramBlock: ParmBlkPtr): OSErr;
  1244.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1245.     INLINE $205F, $A400, $3E80;
  1246.     {$ENDC}
  1247. FUNCTION PBOpenImmed(paramBlock: ParmBlkPtr): OSErr;
  1248.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1249.     INLINE $205F, $A200, $3E80;
  1250.     {$ENDC}
  1251. FUNCTION PBCloseSync(paramBlock: ParmBlkPtr): OSErr;
  1252.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1253.     INLINE $205F, $A001, $3E80;
  1254.     {$ENDC}
  1255. FUNCTION PBCloseAsync(paramBlock: ParmBlkPtr): OSErr;
  1256.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1257.     INLINE $205F, $A401, $3E80;
  1258.     {$ENDC}
  1259. FUNCTION PBCloseImmed(paramBlock: ParmBlkPtr): OSErr;
  1260.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1261.     INLINE $205F, $A201, $3E80;
  1262.     {$ENDC}
  1263. FUNCTION PBReadSync(paramBlock: ParmBlkPtr): OSErr;
  1264.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1265.     INLINE $205F, $A002, $3E80;
  1266.     {$ENDC}
  1267. FUNCTION PBReadAsync(paramBlock: ParmBlkPtr): OSErr;
  1268.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1269.     INLINE $205F, $A402, $3E80;
  1270.     {$ENDC}
  1271. FUNCTION PBReadImmed(paramBlock: ParmBlkPtr): OSErr;
  1272.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1273.     INLINE $205F, $A202, $3E80;
  1274.     {$ENDC}
  1275. FUNCTION PBWriteSync(paramBlock: ParmBlkPtr): OSErr;
  1276.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1277.     INLINE $205F, $A003, $3E80;
  1278.     {$ENDC}
  1279. FUNCTION PBWriteAsync(paramBlock: ParmBlkPtr): OSErr;
  1280.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1281.     INLINE $205F, $A403, $3E80;
  1282.     {$ENDC}
  1283. FUNCTION PBWriteImmed(paramBlock: ParmBlkPtr): OSErr;
  1284.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1285.     INLINE $205F, $A203, $3E80;
  1286.     {$ENDC}
  1287. {$ENDC}  {OLDROUTINELOCATIONS}
  1288.  
  1289. FUNCTION PBGetVInfoSync(paramBlock: ParmBlkPtr): OSErr;
  1290.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1291.     INLINE $205F, $A007, $3E80;
  1292.     {$ENDC}
  1293. FUNCTION PBGetVInfoAsync(paramBlock: ParmBlkPtr): OSErr;
  1294.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1295.     INLINE $205F, $A407, $3E80;
  1296.     {$ENDC}
  1297. FUNCTION PBXGetVolInfoSync(paramBlock: XVolumeParamPtr): OSErr;
  1298.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1299.     INLINE $205F, $7012, $A060, $3E80;
  1300.     {$ENDC}
  1301. FUNCTION PBXGetVolInfoAsync(paramBlock: XVolumeParamPtr): OSErr;
  1302.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1303.     INLINE $205F, $7012, $A460, $3E80;
  1304.     {$ENDC}
  1305. FUNCTION PBGetVolSync(paramBlock: ParmBlkPtr): OSErr;
  1306.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1307.     INLINE $205F, $A014, $3E80;
  1308.     {$ENDC}
  1309. FUNCTION PBGetVolAsync(paramBlock: ParmBlkPtr): OSErr;
  1310.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1311.     INLINE $205F, $A414, $3E80;
  1312.     {$ENDC}
  1313. FUNCTION PBSetVolSync(paramBlock: ParmBlkPtr): OSErr;
  1314.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1315.     INLINE $205F, $A015, $3E80;
  1316.     {$ENDC}
  1317. FUNCTION PBSetVolAsync(paramBlock: ParmBlkPtr): OSErr;
  1318.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1319.     INLINE $205F, $A415, $3E80;
  1320.     {$ENDC}
  1321. FUNCTION PBFlushVolSync(paramBlock: ParmBlkPtr): OSErr;
  1322.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1323.     INLINE $205F, $A013, $3E80;
  1324.     {$ENDC}
  1325. FUNCTION PBFlushVolAsync(paramBlock: ParmBlkPtr): OSErr;
  1326.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1327.     INLINE $205F, $A413, $3E80;
  1328.     {$ENDC}
  1329. FUNCTION PBCreateSync(paramBlock: ParmBlkPtr): OSErr;
  1330.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1331.     INLINE $205F, $A008, $3E80;
  1332.     {$ENDC}
  1333. FUNCTION PBCreateAsync(paramBlock: ParmBlkPtr): OSErr;
  1334.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1335.     INLINE $205F, $A408, $3E80;
  1336.     {$ENDC}
  1337. FUNCTION PBDeleteSync(paramBlock: ParmBlkPtr): OSErr;
  1338.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1339.     INLINE $205F, $A009, $3E80;
  1340.     {$ENDC}
  1341. FUNCTION PBDeleteAsync(paramBlock: ParmBlkPtr): OSErr;
  1342.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1343.     INLINE $205F, $A409, $3E80;
  1344.     {$ENDC}
  1345. FUNCTION PBOpenDFSync(paramBlock: ParmBlkPtr): OSErr;
  1346.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1347.     INLINE $205F, $701A, $A060, $3E80;
  1348.     {$ENDC}
  1349. FUNCTION PBOpenDFAsync(paramBlock: ParmBlkPtr): OSErr;
  1350.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1351.     INLINE $205F, $701A, $A460, $3E80;
  1352.     {$ENDC}
  1353. FUNCTION PBOpenRFSync(paramBlock: ParmBlkPtr): OSErr;
  1354.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1355.     INLINE $205F, $A00A, $3E80;
  1356.     {$ENDC}
  1357. FUNCTION PBOpenRFAsync(paramBlock: ParmBlkPtr): OSErr;
  1358.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1359.     INLINE $205F, $A40A, $3E80;
  1360.     {$ENDC}
  1361. FUNCTION PBRenameSync(paramBlock: ParmBlkPtr): OSErr;
  1362.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1363.     INLINE $205F, $A00B, $3E80;
  1364.     {$ENDC}
  1365. FUNCTION PBRenameAsync(paramBlock: ParmBlkPtr): OSErr;
  1366.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1367.     INLINE $205F, $A40B, $3E80;
  1368.     {$ENDC}
  1369. FUNCTION PBGetFInfoSync(paramBlock: ParmBlkPtr): OSErr;
  1370.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1371.     INLINE $205F, $A00C, $3E80;
  1372.     {$ENDC}
  1373. FUNCTION PBGetFInfoAsync(paramBlock: ParmBlkPtr): OSErr;
  1374.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1375.     INLINE $205F, $A40C, $3E80;
  1376.     {$ENDC}
  1377. FUNCTION PBSetFInfoSync(paramBlock: ParmBlkPtr): OSErr;
  1378.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1379.     INLINE $205F, $A00D, $3E80;
  1380.     {$ENDC}
  1381. FUNCTION PBSetFInfoAsync(paramBlock: ParmBlkPtr): OSErr;
  1382.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1383.     INLINE $205F, $A40D, $3E80;
  1384.     {$ENDC}
  1385. FUNCTION PBSetFLockSync(paramBlock: ParmBlkPtr): OSErr;
  1386.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1387.     INLINE $205F, $A041, $3E80;
  1388.     {$ENDC}
  1389. FUNCTION PBSetFLockAsync(paramBlock: ParmBlkPtr): OSErr;
  1390.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1391.     INLINE $205F, $A441, $3E80;
  1392.     {$ENDC}
  1393. FUNCTION PBRstFLockSync(paramBlock: ParmBlkPtr): OSErr;
  1394.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1395.     INLINE $205F, $A042, $3E80;
  1396.     {$ENDC}
  1397. FUNCTION PBRstFLockAsync(paramBlock: ParmBlkPtr): OSErr;
  1398.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1399.     INLINE $205F, $A442, $3E80;
  1400.     {$ENDC}
  1401. FUNCTION PBSetFVersSync(paramBlock: ParmBlkPtr): OSErr;
  1402.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1403.     INLINE $205F, $A043, $3E80;
  1404.     {$ENDC}
  1405. FUNCTION PBSetFVersAsync(paramBlock: ParmBlkPtr): OSErr;
  1406.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1407.     INLINE $205F, $A443, $3E80;
  1408.     {$ENDC}
  1409. FUNCTION PBAllocateSync(paramBlock: ParmBlkPtr): OSErr;
  1410.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1411.     INLINE $205F, $A010, $3E80;
  1412.     {$ENDC}
  1413. FUNCTION PBAllocateAsync(paramBlock: ParmBlkPtr): OSErr;
  1414.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1415.     INLINE $205F, $A410, $3E80;
  1416.     {$ENDC}
  1417. FUNCTION PBGetEOFSync(paramBlock: ParmBlkPtr): OSErr;
  1418.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1419.     INLINE $205F, $A011, $3E80;
  1420.     {$ENDC}
  1421. FUNCTION PBGetEOFAsync(paramBlock: ParmBlkPtr): OSErr;
  1422.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1423.     INLINE $205F, $A411, $3E80;
  1424.     {$ENDC}
  1425. FUNCTION PBSetEOFSync(paramBlock: ParmBlkPtr): OSErr;
  1426.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1427.     INLINE $205F, $A012, $3E80;
  1428.     {$ENDC}
  1429. FUNCTION PBSetEOFAsync(paramBlock: ParmBlkPtr): OSErr;
  1430.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1431.     INLINE $205F, $A412, $3E80;
  1432.     {$ENDC}
  1433. FUNCTION PBGetFPosSync(paramBlock: ParmBlkPtr): OSErr;
  1434.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1435.     INLINE $205F, $A018, $3E80;
  1436.     {$ENDC}
  1437. FUNCTION PBGetFPosAsync(paramBlock: ParmBlkPtr): OSErr;
  1438.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1439.     INLINE $205F, $A418, $3E80;
  1440.     {$ENDC}
  1441. FUNCTION PBSetFPosSync(paramBlock: ParmBlkPtr): OSErr;
  1442.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1443.     INLINE $205F, $A044, $3E80;
  1444.     {$ENDC}
  1445. FUNCTION PBSetFPosAsync(paramBlock: ParmBlkPtr): OSErr;
  1446.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1447.     INLINE $205F, $A444, $3E80;
  1448.     {$ENDC}
  1449. FUNCTION PBFlushFileSync(paramBlock: ParmBlkPtr): OSErr;
  1450.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1451.     INLINE $205F, $A045, $3E80;
  1452.     {$ENDC}
  1453. FUNCTION PBFlushFileAsync(paramBlock: ParmBlkPtr): OSErr;
  1454.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1455.     INLINE $205F, $A445, $3E80;
  1456.     {$ENDC}
  1457. FUNCTION PBMountVol(paramBlock: ParmBlkPtr): OSErr;
  1458.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1459.     INLINE $205F, $A00F, $3E80;
  1460.     {$ENDC}
  1461. FUNCTION PBUnmountVol(paramBlock: ParmBlkPtr): OSErr;
  1462.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1463.     INLINE $205F, $A00E, $3E80;
  1464.     {$ENDC}
  1465. FUNCTION PBUnmountVolImmed(paramBlock: ParmBlkPtr): OSErr;
  1466.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1467.     INLINE $205F, $A20E, $3E80;
  1468.     {$ENDC}
  1469. FUNCTION PBEject(paramBlock: ParmBlkPtr): OSErr;
  1470.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1471.     INLINE $205F, $A017, $3E80;
  1472.     {$ENDC}
  1473. FUNCTION PBOffLine(paramBlock: ParmBlkPtr): OSErr;
  1474.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1475.     INLINE $205F, $A035, $3E80;
  1476.     {$ENDC}
  1477. FUNCTION PBCatSearchSync(paramBlock: CSParamPtr): OSErr;
  1478.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1479.     INLINE $205F, $7018, $A260, $3E80;
  1480.     {$ENDC}
  1481. FUNCTION PBCatSearchAsync(paramBlock: CSParamPtr): OSErr;
  1482.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1483.     INLINE $205F, $7018, $A660, $3E80;
  1484.     {$ENDC}
  1485. FUNCTION SetVol(volName: StringPtr; vRefNum: INTEGER): OSErr;
  1486. FUNCTION UnmountVol(volName: StringPtr; vRefNum: INTEGER): OSErr;
  1487. FUNCTION Eject(volName: StringPtr; vRefNum: INTEGER): OSErr;
  1488. FUNCTION FlushVol(volName: StringPtr; vRefNum: INTEGER): OSErr;
  1489. FUNCTION HSetVol(volName: StringPtr; vRefNum: INTEGER; dirID: LONGINT): OSErr;
  1490. {$IFC OLDROUTINELOCATIONS }
  1491. PROCEDURE AddDrive(drvrRefNum: INTEGER; drvNum: INTEGER; qEl: DrvQElPtr);
  1492. {$ENDC}  {OLDROUTINELOCATIONS}
  1493.  
  1494. FUNCTION FSOpen(fileName: ConstStr255Param; vRefNum: INTEGER; VAR refNum: INTEGER): OSErr;
  1495. FUNCTION OpenDF(fileName: ConstStr255Param; vRefNum: INTEGER; VAR refNum: INTEGER): OSErr;
  1496. FUNCTION FSClose(refNum: INTEGER): OSErr;
  1497. FUNCTION FSRead(refNum: INTEGER; VAR count: LONGINT; buffPtr: UNIV Ptr): OSErr;
  1498. FUNCTION FSWrite(refNum: INTEGER; VAR count: LONGINT; buffPtr: UNIV Ptr): OSErr;
  1499. FUNCTION GetVInfo(drvNum: INTEGER; volName: StringPtr; VAR vRefNum: INTEGER; VAR freeBytes: LONGINT): OSErr;
  1500. FUNCTION GetFInfo(fileName: ConstStr255Param; vRefNum: INTEGER; VAR fndrInfo: FInfo): OSErr;
  1501. FUNCTION GetVol(volName: StringPtr; VAR vRefNum: INTEGER): OSErr;
  1502. FUNCTION Create(fileName: ConstStr255Param; vRefNum: INTEGER; creator: OSType; fileType: OSType): OSErr;
  1503. FUNCTION FSDelete(fileName: ConstStr255Param; vRefNum: INTEGER): OSErr;
  1504. FUNCTION OpenRF(fileName: ConstStr255Param; vRefNum: INTEGER; VAR refNum: INTEGER): OSErr;
  1505. FUNCTION Rename(oldName: ConstStr255Param; vRefNum: INTEGER; newName: ConstStr255Param): OSErr;
  1506. FUNCTION SetFInfo(fileName: ConstStr255Param; vRefNum: INTEGER; {CONST}VAR fndrInfo: FInfo): OSErr;
  1507. FUNCTION SetFLock(fileName: ConstStr255Param; vRefNum: INTEGER): OSErr;
  1508. FUNCTION RstFLock(fileName: ConstStr255Param; vRefNum: INTEGER): OSErr;
  1509. FUNCTION Allocate(refNum: INTEGER; VAR count: LONGINT): OSErr;
  1510. FUNCTION GetEOF(refNum: INTEGER; VAR logEOF: LONGINT): OSErr;
  1511. FUNCTION SetEOF(refNum: INTEGER; logEOF: LONGINT): OSErr;
  1512. FUNCTION GetFPos(refNum: INTEGER; VAR filePos: LONGINT): OSErr;
  1513. FUNCTION SetFPos(refNum: INTEGER; posMode: INTEGER; posOff: LONGINT): OSErr;
  1514. FUNCTION GetVRefNum(fileRefNum: INTEGER; VAR vRefNum: INTEGER): OSErr;
  1515. FUNCTION PBOpenWDSync(paramBlock: WDPBPtr): OSErr;
  1516.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1517.     INLINE $205F, $7001, $A260, $3E80;
  1518.     {$ENDC}
  1519. FUNCTION PBOpenWDAsync(paramBlock: WDPBPtr): OSErr;
  1520.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1521.     INLINE $205F, $7001, $A660, $3E80;
  1522.     {$ENDC}
  1523. FUNCTION PBCloseWDSync(paramBlock: WDPBPtr): OSErr;
  1524.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1525.     INLINE $205F, $7002, $A260, $3E80;
  1526.     {$ENDC}
  1527. FUNCTION PBCloseWDAsync(paramBlock: WDPBPtr): OSErr;
  1528.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1529.     INLINE $205F, $7002, $A660, $3E80;
  1530.     {$ENDC}
  1531. FUNCTION PBHSetVolSync(paramBlock: WDPBPtr): OSErr;
  1532.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1533.     INLINE $205F, $A215, $3E80;
  1534.     {$ENDC}
  1535. FUNCTION PBHSetVolAsync(paramBlock: WDPBPtr): OSErr;
  1536.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1537.     INLINE $205F, $A615, $3E80;
  1538.     {$ENDC}
  1539. FUNCTION PBHGetVolSync(paramBlock: WDPBPtr): OSErr;
  1540.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1541.     INLINE $205F, $A214, $3E80;
  1542.     {$ENDC}
  1543. FUNCTION PBHGetVolAsync(paramBlock: WDPBPtr): OSErr;
  1544.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1545.     INLINE $205F, $A614, $3E80;
  1546.     {$ENDC}
  1547. FUNCTION PBCatMoveSync(paramBlock: CMovePBPtr): OSErr;
  1548.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1549.     INLINE $205F, $7005, $A260, $3E80;
  1550.     {$ENDC}
  1551. FUNCTION PBCatMoveAsync(paramBlock: CMovePBPtr): OSErr;
  1552.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1553.     INLINE $205F, $7005, $A660, $3E80;
  1554.     {$ENDC}
  1555. FUNCTION PBDirCreateSync(paramBlock: HParmBlkPtr): OSErr;
  1556.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1557.     INLINE $205F, $7006, $A260, $3E80;
  1558.     {$ENDC}
  1559. FUNCTION PBDirCreateAsync(paramBlock: HParmBlkPtr): OSErr;
  1560.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1561.     INLINE $205F, $7006, $A660, $3E80;
  1562.     {$ENDC}
  1563. FUNCTION PBGetWDInfoSync(paramBlock: WDPBPtr): OSErr;
  1564.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1565.     INLINE $205F, $7007, $A260, $3E80;
  1566.     {$ENDC}
  1567. FUNCTION PBGetWDInfoAsync(paramBlock: WDPBPtr): OSErr;
  1568.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1569.     INLINE $205F, $7007, $A660, $3E80;
  1570.     {$ENDC}
  1571. FUNCTION PBGetFCBInfoSync(paramBlock: FCBPBPtr): OSErr;
  1572.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1573.     INLINE $205F, $7008, $A260, $3E80;
  1574.     {$ENDC}
  1575. FUNCTION PBGetFCBInfoAsync(paramBlock: FCBPBPtr): OSErr;
  1576.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1577.     INLINE $205F, $7008, $A660, $3E80;
  1578.     {$ENDC}
  1579. FUNCTION PBGetCatInfoSync(paramBlock: CInfoPBPtr): OSErr;
  1580.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1581.     INLINE $205F, $7009, $A260, $3E80;
  1582.     {$ENDC}
  1583. FUNCTION PBGetCatInfoAsync(paramBlock: CInfoPBPtr): OSErr;
  1584.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1585.     INLINE $205F, $7009, $A660, $3E80;
  1586.     {$ENDC}
  1587. FUNCTION PBSetCatInfoSync(paramBlock: CInfoPBPtr): OSErr;
  1588.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1589.     INLINE $205F, $700A, $A260, $3E80;
  1590.     {$ENDC}
  1591. FUNCTION PBSetCatInfoAsync(paramBlock: CInfoPBPtr): OSErr;
  1592.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1593.     INLINE $205F, $700A, $A660, $3E80;
  1594.     {$ENDC}
  1595. FUNCTION PBAllocContigSync(paramBlock: ParmBlkPtr): OSErr;
  1596.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1597.     INLINE $205F, $A210, $3E80;
  1598.     {$ENDC}
  1599. FUNCTION PBAllocContigAsync(paramBlock: ParmBlkPtr): OSErr;
  1600.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1601.     INLINE $205F, $A610, $3E80;
  1602.     {$ENDC}
  1603. FUNCTION PBLockRangeSync(paramBlock: ParmBlkPtr): OSErr;
  1604.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1605.     INLINE $205F, $7010, $A260, $3E80;
  1606.     {$ENDC}
  1607. FUNCTION PBLockRangeAsync(paramBlock: ParmBlkPtr): OSErr;
  1608.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1609.     INLINE $205F, $7010, $A660, $3E80;
  1610.     {$ENDC}
  1611. FUNCTION PBUnlockRangeSync(paramBlock: ParmBlkPtr): OSErr;
  1612.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1613.     INLINE $205F, $7011, $A260, $3E80;
  1614.     {$ENDC}
  1615. FUNCTION PBUnlockRangeAsync(paramBlock: ParmBlkPtr): OSErr;
  1616.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1617.     INLINE $205F, $7011, $A660, $3E80;
  1618.     {$ENDC}
  1619. FUNCTION PBSetVInfoSync(paramBlock: HParmBlkPtr): OSErr;
  1620.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1621.     INLINE $205F, $700B, $A260, $3E80;
  1622.     {$ENDC}
  1623. FUNCTION PBSetVInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  1624.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1625.     INLINE $205F, $700B, $A660, $3E80;
  1626.     {$ENDC}
  1627. FUNCTION PBHGetVInfoSync(paramBlock: HParmBlkPtr): OSErr;
  1628.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1629.     INLINE $205F, $A207, $3E80;
  1630.     {$ENDC}
  1631. FUNCTION PBHGetVInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  1632.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1633.     INLINE $205F, $A607, $3E80;
  1634.     {$ENDC}
  1635. FUNCTION PBHOpenSync(paramBlock: HParmBlkPtr): OSErr;
  1636.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1637.     INLINE $205F, $A200, $3E80;
  1638.     {$ENDC}
  1639. FUNCTION PBHOpenAsync(paramBlock: HParmBlkPtr): OSErr;
  1640.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1641.     INLINE $205F, $A600, $3E80;
  1642.     {$ENDC}
  1643. FUNCTION PBHOpenRFSync(paramBlock: HParmBlkPtr): OSErr;
  1644.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1645.     INLINE $205F, $A20A, $3E80;
  1646.     {$ENDC}
  1647. FUNCTION PBHOpenRFAsync(paramBlock: HParmBlkPtr): OSErr;
  1648.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1649.     INLINE $205F, $A60A, $3E80;
  1650.     {$ENDC}
  1651. FUNCTION PBHOpenDFSync(paramBlock: HParmBlkPtr): OSErr;
  1652.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1653.     INLINE $205F, $701A, $A260, $3E80;
  1654.     {$ENDC}
  1655. FUNCTION PBHOpenDFAsync(paramBlock: HParmBlkPtr): OSErr;
  1656.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1657.     INLINE $205F, $701A, $A660, $3E80;
  1658.     {$ENDC}
  1659. FUNCTION PBHCreateSync(paramBlock: HParmBlkPtr): OSErr;
  1660.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1661.     INLINE $205F, $A208, $3E80;
  1662.     {$ENDC}
  1663. FUNCTION PBHCreateAsync(paramBlock: HParmBlkPtr): OSErr;
  1664.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1665.     INLINE $205F, $A608, $3E80;
  1666.     {$ENDC}
  1667. FUNCTION PBHDeleteSync(paramBlock: HParmBlkPtr): OSErr;
  1668.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1669.     INLINE $205F, $A209, $3E80;
  1670.     {$ENDC}
  1671. FUNCTION PBHDeleteAsync(paramBlock: HParmBlkPtr): OSErr;
  1672.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1673.     INLINE $205F, $A609, $3E80;
  1674.     {$ENDC}
  1675. FUNCTION PBHRenameSync(paramBlock: HParmBlkPtr): OSErr;
  1676.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1677.     INLINE $205F, $A20B, $3E80;
  1678.     {$ENDC}
  1679. FUNCTION PBHRenameAsync(paramBlock: HParmBlkPtr): OSErr;
  1680.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1681.     INLINE $205F, $A60B, $3E80;
  1682.     {$ENDC}
  1683. FUNCTION PBHRstFLockSync(paramBlock: HParmBlkPtr): OSErr;
  1684.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1685.     INLINE $205F, $A242, $3E80;
  1686.     {$ENDC}
  1687. FUNCTION PBHRstFLockAsync(paramBlock: HParmBlkPtr): OSErr;
  1688.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1689.     INLINE $205F, $A642, $3E80;
  1690.     {$ENDC}
  1691. FUNCTION PBHSetFLockSync(paramBlock: HParmBlkPtr): OSErr;
  1692.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1693.     INLINE $205F, $A241, $3E80;
  1694.     {$ENDC}
  1695. FUNCTION PBHSetFLockAsync(paramBlock: HParmBlkPtr): OSErr;
  1696.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1697.     INLINE $205F, $A641, $3E80;
  1698.     {$ENDC}
  1699. FUNCTION PBHGetFInfoSync(paramBlock: HParmBlkPtr): OSErr;
  1700.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1701.     INLINE $205F, $A20C, $3E80;
  1702.     {$ENDC}
  1703. FUNCTION PBHGetFInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  1704.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1705.     INLINE $205F, $A60C, $3E80;
  1706.     {$ENDC}
  1707. FUNCTION PBHSetFInfoSync(paramBlock: HParmBlkPtr): OSErr;
  1708.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1709.     INLINE $205F, $A20D, $3E80;
  1710.     {$ENDC}
  1711. FUNCTION PBHSetFInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  1712.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1713.     INLINE $205F, $A60D, $3E80;
  1714.     {$ENDC}
  1715. FUNCTION PBMakeFSSpecSync(paramBlock: HParmBlkPtr): OSErr;
  1716.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1717.     INLINE $205F, $701B, $A260, $3E80;
  1718.     {$ENDC}
  1719. FUNCTION PBMakeFSSpecAsync(paramBlock: HParmBlkPtr): OSErr;
  1720.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1721.     INLINE $205F, $701B, $A660, $3E80;
  1722.     {$ENDC}
  1723. PROCEDURE FInitQueue;
  1724.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1725.     INLINE $A016;
  1726.     {$ENDC}
  1727.  
  1728. FUNCTION GetFSQHdr: QHdrPtr;
  1729.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1730.     INLINE $2EBC, $0000, $0360;
  1731.     {$ENDC}
  1732. FUNCTION GetVCBQHdr: QHdrPtr;
  1733.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1734.     INLINE $2EBC, $0000, $0356;
  1735.     {$ENDC}
  1736. {$IFC OLDROUTINELOCATIONS }
  1737. FUNCTION GetDrvQHdr: QHdrPtr;
  1738.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1739.     INLINE $2EBC, $0000, $0308;
  1740.     {$ENDC}
  1741. {$ENDC}  {OLDROUTINELOCATIONS}
  1742.  
  1743. FUNCTION HGetVol(volName: StringPtr; VAR vRefNum: INTEGER; VAR dirID: LONGINT): OSErr;
  1744. FUNCTION HOpen(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param; permission: SInt8; VAR refNum: INTEGER): OSErr;
  1745. FUNCTION HOpenDF(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param; permission: SInt8; VAR refNum: INTEGER): OSErr;
  1746. FUNCTION HOpenRF(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param; permission: SInt8; VAR refNum: INTEGER): OSErr;
  1747. FUNCTION AllocContig(refNum: INTEGER; VAR count: LONGINT): OSErr;
  1748. FUNCTION HCreate(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param; creator: OSType; fileType: OSType): OSErr;
  1749. FUNCTION DirCreate(vRefNum: INTEGER; parentDirID: LONGINT; directoryName: ConstStr255Param; VAR createdDirID: LONGINT): OSErr;
  1750. FUNCTION HDelete(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param): OSErr;
  1751. FUNCTION HGetFInfo(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param; VAR fndrInfo: FInfo): OSErr;
  1752. FUNCTION HSetFInfo(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param; {CONST}VAR fndrInfo: FInfo): OSErr;
  1753. FUNCTION HSetFLock(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param): OSErr;
  1754. FUNCTION HRstFLock(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param): OSErr;
  1755. FUNCTION HRename(vRefNum: INTEGER; dirID: LONGINT; oldName: ConstStr255Param; newName: ConstStr255Param): OSErr;
  1756. FUNCTION CatMove(vRefNum: INTEGER; dirID: LONGINT; oldName: ConstStr255Param; newDirID: LONGINT; newName: ConstStr255Param): OSErr;
  1757. FUNCTION OpenWD(vRefNum: INTEGER; dirID: LONGINT; procID: LONGINT; VAR wdRefNum: INTEGER): OSErr;
  1758. FUNCTION CloseWD(wdRefNum: INTEGER): OSErr;
  1759. FUNCTION GetWDInfo(wdRefNum: INTEGER; VAR vRefNum: INTEGER; VAR dirID: LONGINT; VAR procID: LONGINT): OSErr;
  1760. {  shared environment  }
  1761. FUNCTION PBHGetVolParmsSync(paramBlock: HParmBlkPtr): OSErr;
  1762.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1763.     INLINE $205F, $7030, $A260, $3E80;
  1764.     {$ENDC}
  1765. FUNCTION PBHGetVolParmsAsync(paramBlock: HParmBlkPtr): OSErr;
  1766.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1767.     INLINE $205F, $7030, $A660, $3E80;
  1768.     {$ENDC}
  1769. FUNCTION PBHGetLogInInfoSync(paramBlock: HParmBlkPtr): OSErr;
  1770.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1771.     INLINE $205F, $7031, $A260, $3E80;
  1772.     {$ENDC}
  1773. FUNCTION PBHGetLogInInfoAsync(paramBlock: HParmBlkPtr): OSErr;
  1774.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1775.     INLINE $205F, $7031, $A660, $3E80;
  1776.     {$ENDC}
  1777. FUNCTION PBHGetDirAccessSync(paramBlock: HParmBlkPtr): OSErr;
  1778.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1779.     INLINE $205F, $7032, $A260, $3E80;
  1780.     {$ENDC}
  1781. FUNCTION PBHGetDirAccessAsync(paramBlock: HParmBlkPtr): OSErr;
  1782.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1783.     INLINE $205F, $7032, $A660, $3E80;
  1784.     {$ENDC}
  1785. FUNCTION PBHSetDirAccessSync(paramBlock: HParmBlkPtr): OSErr;
  1786.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1787.     INLINE $205F, $7033, $A260, $3E80;
  1788.     {$ENDC}
  1789. FUNCTION PBHSetDirAccessAsync(paramBlock: HParmBlkPtr): OSErr;
  1790.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1791.     INLINE $205F, $7033, $A660, $3E80;
  1792.     {$ENDC}
  1793. FUNCTION PBHMapIDSync(paramBlock: HParmBlkPtr): OSErr;
  1794.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1795.     INLINE $205F, $7034, $A260, $3E80;
  1796.     {$ENDC}
  1797. FUNCTION PBHMapIDAsync(paramBlock: HParmBlkPtr): OSErr;
  1798.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1799.     INLINE $205F, $7034, $A660, $3E80;
  1800.     {$ENDC}
  1801. FUNCTION PBHMapNameSync(paramBlock: HParmBlkPtr): OSErr;
  1802.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1803.     INLINE $205F, $7035, $A260, $3E80;
  1804.     {$ENDC}
  1805. FUNCTION PBHMapNameAsync(paramBlock: HParmBlkPtr): OSErr;
  1806.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1807.     INLINE $205F, $7035, $A660, $3E80;
  1808.     {$ENDC}
  1809. FUNCTION PBHCopyFileSync(paramBlock: HParmBlkPtr): OSErr;
  1810.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1811.     INLINE $205F, $7036, $A260, $3E80;
  1812.     {$ENDC}
  1813. FUNCTION PBHCopyFileAsync(paramBlock: HParmBlkPtr): OSErr;
  1814.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1815.     INLINE $205F, $7036, $A660, $3E80;
  1816.     {$ENDC}
  1817. FUNCTION PBHMoveRenameSync(paramBlock: HParmBlkPtr): OSErr;
  1818.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1819.     INLINE $205F, $7037, $A260, $3E80;
  1820.     {$ENDC}
  1821. FUNCTION PBHMoveRenameAsync(paramBlock: HParmBlkPtr): OSErr;
  1822.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1823.     INLINE $205F, $7037, $A660, $3E80;
  1824.     {$ENDC}
  1825. FUNCTION PBHOpenDenySync(paramBlock: HParmBlkPtr): OSErr;
  1826.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1827.     INLINE $205F, $7038, $A260, $3E80;
  1828.     {$ENDC}
  1829. FUNCTION PBHOpenDenyAsync(paramBlock: HParmBlkPtr): OSErr;
  1830.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1831.     INLINE $205F, $7038, $A660, $3E80;
  1832.     {$ENDC}
  1833. FUNCTION PBHOpenRFDenySync(paramBlock: HParmBlkPtr): OSErr;
  1834.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1835.     INLINE $205F, $7039, $A260, $3E80;
  1836.     {$ENDC}
  1837. FUNCTION PBHOpenRFDenyAsync(paramBlock: HParmBlkPtr): OSErr;
  1838.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1839.     INLINE $205F, $7039, $A660, $3E80;
  1840.     {$ENDC}
  1841. FUNCTION PBGetXCatInfoSync(paramBlock: XCInfoPBPtr): OSErr;
  1842.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1843.     INLINE $205F, $703A, $A260, $3E80;
  1844.     {$ENDC}
  1845. FUNCTION PBGetXCatInfoAsync(paramBlock: XCInfoPBPtr): OSErr;
  1846.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1847.     INLINE $205F, $703A, $A660, $3E80;
  1848.     {$ENDC}
  1849. FUNCTION PBExchangeFilesSync(paramBlock: HParmBlkPtr): OSErr;
  1850.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1851.     INLINE $205F, $7017, $A260, $3E80;
  1852.     {$ENDC}
  1853. FUNCTION PBExchangeFilesAsync(paramBlock: HParmBlkPtr): OSErr;
  1854.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1855.     INLINE $205F, $7017, $A660, $3E80;
  1856.     {$ENDC}
  1857. FUNCTION PBCreateFileIDRefSync(paramBlock: HParmBlkPtr): OSErr;
  1858.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1859.     INLINE $205F, $7014, $A260, $3E80;
  1860.     {$ENDC}
  1861. FUNCTION PBCreateFileIDRefAsync(paramBlock: HParmBlkPtr): OSErr;
  1862.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1863.     INLINE $205F, $7014, $A660, $3E80;
  1864.     {$ENDC}
  1865. FUNCTION PBResolveFileIDRefSync(paramBlock: HParmBlkPtr): OSErr;
  1866.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1867.     INLINE $205F, $7016, $A260, $3E80;
  1868.     {$ENDC}
  1869. FUNCTION PBResolveFileIDRefAsync(paramBlock: HParmBlkPtr): OSErr;
  1870.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1871.     INLINE $205F, $7016, $A660, $3E80;
  1872.     {$ENDC}
  1873. FUNCTION PBDeleteFileIDRefSync(paramBlock: HParmBlkPtr): OSErr;
  1874.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1875.     INLINE $205F, $7015, $A260, $3E80;
  1876.     {$ENDC}
  1877. FUNCTION PBDeleteFileIDRefAsync(paramBlock: HParmBlkPtr): OSErr;
  1878.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1879.     INLINE $205F, $7015, $A660, $3E80;
  1880.     {$ENDC}
  1881. FUNCTION PBGetForeignPrivsSync(paramBlock: HParmBlkPtr): OSErr;
  1882.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1883.     INLINE $205F, $7060, $A260, $3E80;
  1884.     {$ENDC}
  1885. FUNCTION PBGetForeignPrivsAsync(paramBlock: HParmBlkPtr): OSErr;
  1886.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1887.     INLINE $205F, $7060, $A660, $3E80;
  1888.     {$ENDC}
  1889. FUNCTION PBSetForeignPrivsSync(paramBlock: HParmBlkPtr): OSErr;
  1890.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1891.     INLINE $205F, $7061, $A260, $3E80;
  1892.     {$ENDC}
  1893. FUNCTION PBSetForeignPrivsAsync(paramBlock: HParmBlkPtr): OSErr;
  1894.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1895.     INLINE $205F, $7061, $A660, $3E80;
  1896.     {$ENDC}
  1897. {  Desktop Manager  }
  1898. FUNCTION PBDTGetPath(paramBlock: DTPBPtr): OSErr;
  1899.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1900.     INLINE $205F, $7020, $A260, $3E80;
  1901.     {$ENDC}
  1902. FUNCTION PBDTCloseDown(paramBlock: DTPBPtr): OSErr;
  1903.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1904.     INLINE $205F, $7021, $A260, $3E80;
  1905.     {$ENDC}
  1906. FUNCTION PBDTAddIconSync(paramBlock: DTPBPtr): OSErr;
  1907.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1908.     INLINE $205F, $7022, $A260, $3E80;
  1909.     {$ENDC}
  1910. FUNCTION PBDTAddIconAsync(paramBlock: DTPBPtr): OSErr;
  1911.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1912.     INLINE $205F, $7022, $A660, $3E80;
  1913.     {$ENDC}
  1914. FUNCTION PBDTGetIconSync(paramBlock: DTPBPtr): OSErr;
  1915.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1916.     INLINE $205F, $7023, $A260, $3E80;
  1917.     {$ENDC}
  1918. FUNCTION PBDTGetIconAsync(paramBlock: DTPBPtr): OSErr;
  1919.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1920.     INLINE $205F, $7023, $A660, $3E80;
  1921.     {$ENDC}
  1922. FUNCTION PBDTGetIconInfoSync(paramBlock: DTPBPtr): OSErr;
  1923.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1924.     INLINE $205F, $7024, $A260, $3E80;
  1925.     {$ENDC}
  1926. FUNCTION PBDTGetIconInfoAsync(paramBlock: DTPBPtr): OSErr;
  1927.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1928.     INLINE $205F, $7024, $A660, $3E80;
  1929.     {$ENDC}
  1930. FUNCTION PBDTAddAPPLSync(paramBlock: DTPBPtr): OSErr;
  1931.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1932.     INLINE $205F, $7025, $A260, $3E80;
  1933.     {$ENDC}
  1934. FUNCTION PBDTAddAPPLAsync(paramBlock: DTPBPtr): OSErr;
  1935.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1936.     INLINE $205F, $7025, $A660, $3E80;
  1937.     {$ENDC}
  1938. FUNCTION PBDTRemoveAPPLSync(paramBlock: DTPBPtr): OSErr;
  1939.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1940.     INLINE $205F, $7026, $A260, $3E80;
  1941.     {$ENDC}
  1942. FUNCTION PBDTRemoveAPPLAsync(paramBlock: DTPBPtr): OSErr;
  1943.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1944.     INLINE $205F, $7026, $A660, $3E80;
  1945.     {$ENDC}
  1946. FUNCTION PBDTGetAPPLSync(paramBlock: DTPBPtr): OSErr;
  1947.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1948.     INLINE $205F, $7027, $A260, $3E80;
  1949.     {$ENDC}
  1950. FUNCTION PBDTGetAPPLAsync(paramBlock: DTPBPtr): OSErr;
  1951.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1952.     INLINE $205F, $7027, $A660, $3E80;
  1953.     {$ENDC}
  1954. FUNCTION PBDTSetCommentSync(paramBlock: DTPBPtr): OSErr;
  1955.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1956.     INLINE $205F, $7028, $A260, $3E80;
  1957.     {$ENDC}
  1958. FUNCTION PBDTSetCommentAsync(paramBlock: DTPBPtr): OSErr;
  1959.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1960.     INLINE $205F, $7028, $A660, $3E80;
  1961.     {$ENDC}
  1962. FUNCTION PBDTRemoveCommentSync(paramBlock: DTPBPtr): OSErr;
  1963.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1964.     INLINE $205F, $7029, $A260, $3E80;
  1965.     {$ENDC}
  1966. FUNCTION PBDTRemoveCommentAsync(paramBlock: DTPBPtr): OSErr;
  1967.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1968.     INLINE $205F, $7029, $A660, $3E80;
  1969.     {$ENDC}
  1970. FUNCTION PBDTGetCommentSync(paramBlock: DTPBPtr): OSErr;
  1971.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1972.     INLINE $205F, $702A, $A260, $3E80;
  1973.     {$ENDC}
  1974. FUNCTION PBDTGetCommentAsync(paramBlock: DTPBPtr): OSErr;
  1975.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1976.     INLINE $205F, $702A, $A660, $3E80;
  1977.     {$ENDC}
  1978. FUNCTION PBDTFlushSync(paramBlock: DTPBPtr): OSErr;
  1979.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1980.     INLINE $205F, $702B, $A260, $3E80;
  1981.     {$ENDC}
  1982. FUNCTION PBDTFlushAsync(paramBlock: DTPBPtr): OSErr;
  1983.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1984.     INLINE $205F, $702B, $A660, $3E80;
  1985.     {$ENDC}
  1986. FUNCTION PBDTResetSync(paramBlock: DTPBPtr): OSErr;
  1987.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1988.     INLINE $205F, $702C, $A260, $3E80;
  1989.     {$ENDC}
  1990. FUNCTION PBDTResetAsync(paramBlock: DTPBPtr): OSErr;
  1991.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1992.     INLINE $205F, $702C, $A660, $3E80;
  1993.     {$ENDC}
  1994. FUNCTION PBDTGetInfoSync(paramBlock: DTPBPtr): OSErr;
  1995.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  1996.     INLINE $205F, $702D, $A260, $3E80;
  1997.     {$ENDC}
  1998. FUNCTION PBDTGetInfoAsync(paramBlock: DTPBPtr): OSErr;
  1999.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2000.     INLINE $205F, $702D, $A660, $3E80;
  2001.     {$ENDC}
  2002. FUNCTION PBDTOpenInform(paramBlock: DTPBPtr): OSErr;
  2003.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2004.     INLINE $205F, $702E, $A060, $3E80;
  2005.     {$ENDC}
  2006. FUNCTION PBDTDeleteSync(paramBlock: DTPBPtr): OSErr;
  2007.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2008.     INLINE $205F, $702F, $A060, $3E80;
  2009.     {$ENDC}
  2010. FUNCTION PBDTDeleteAsync(paramBlock: DTPBPtr): OSErr;
  2011.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2012.     INLINE $205F, $702F, $A460, $3E80;
  2013.     {$ENDC}
  2014. {  VolumeMount traps  }
  2015. FUNCTION PBGetVolMountInfoSize(paramBlock: ParmBlkPtr): OSErr;
  2016.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2017.     INLINE $205F, $703F, $A260, $3E80;
  2018.     {$ENDC}
  2019. FUNCTION PBGetVolMountInfo(paramBlock: ParmBlkPtr): OSErr;
  2020.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2021.     INLINE $205F, $7040, $A260, $3E80;
  2022.     {$ENDC}
  2023. FUNCTION PBVolumeMount(paramBlock: ParmBlkPtr): OSErr;
  2024.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2025.     INLINE $205F, $7041, $A260, $3E80;
  2026.     {$ENDC}
  2027. {  FSp traps  }
  2028. FUNCTION FSMakeFSSpec(vRefNum: INTEGER; dirID: LONGINT; fileName: ConstStr255Param; VAR spec: FSSpec): OSErr;
  2029.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2030.     INLINE $7001, $AA52;
  2031.     {$ENDC}
  2032. FUNCTION FSpOpenDF({CONST}VAR spec: FSSpec; permission: SInt8; VAR refNum: INTEGER): OSErr;
  2033.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2034.     INLINE $7002, $AA52;
  2035.     {$ENDC}
  2036. FUNCTION FSpOpenRF({CONST}VAR spec: FSSpec; permission: SInt8; VAR refNum: INTEGER): OSErr;
  2037.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2038.     INLINE $7003, $AA52;
  2039.     {$ENDC}
  2040. FUNCTION FSpCreate({CONST}VAR spec: FSSpec; creator: OSType; fileType: OSType; scriptTag: ScriptCode): OSErr;
  2041.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2042.     INLINE $7004, $AA52;
  2043.     {$ENDC}
  2044. FUNCTION FSpDirCreate({CONST}VAR spec: FSSpec; scriptTag: ScriptCode; VAR createdDirID: LONGINT): OSErr;
  2045.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2046.     INLINE $7005, $AA52;
  2047.     {$ENDC}
  2048. FUNCTION FSpDelete({CONST}VAR spec: FSSpec): OSErr;
  2049.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2050.     INLINE $7006, $AA52;
  2051.     {$ENDC}
  2052. FUNCTION FSpGetFInfo({CONST}VAR spec: FSSpec; VAR fndrInfo: FInfo): OSErr;
  2053.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2054.     INLINE $7007, $AA52;
  2055.     {$ENDC}
  2056. FUNCTION FSpSetFInfo({CONST}VAR spec: FSSpec; {CONST}VAR fndrInfo: FInfo): OSErr;
  2057.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2058.     INLINE $7008, $AA52;
  2059.     {$ENDC}
  2060. FUNCTION FSpSetFLock({CONST}VAR spec: FSSpec): OSErr;
  2061.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2062.     INLINE $7009, $AA52;
  2063.     {$ENDC}
  2064. FUNCTION FSpRstFLock({CONST}VAR spec: FSSpec): OSErr;
  2065.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2066.     INLINE $700A, $AA52;
  2067.     {$ENDC}
  2068. FUNCTION FSpRename({CONST}VAR spec: FSSpec; newName: ConstStr255Param): OSErr;
  2069.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2070.     INLINE $700B, $AA52;
  2071.     {$ENDC}
  2072. FUNCTION FSpCatMove({CONST}VAR source: FSSpec; {CONST}VAR dest: FSSpec): OSErr;
  2073.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2074.     INLINE $700C, $AA52;
  2075.     {$ENDC}
  2076. FUNCTION FSpExchangeFiles({CONST}VAR source: FSSpec; {CONST}VAR dest: FSSpec): OSErr;
  2077.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2078.     INLINE $700F, $AA52;
  2079.     {$ENDC}
  2080.  
  2081. FUNCTION PBShareSync(paramBlock: HParmBlkPtr): OSErr;
  2082.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2083.     INLINE $205F, $7042, $A260, $3E80;
  2084.     {$ENDC}
  2085. FUNCTION PBShareAsync(paramBlock: HParmBlkPtr): OSErr;
  2086.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2087.     INLINE $205F, $7042, $A660, $3E80;
  2088.     {$ENDC}
  2089. FUNCTION PBUnshareSync(paramBlock: HParmBlkPtr): OSErr;
  2090.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2091.     INLINE $205F, $7043, $A260, $3E80;
  2092.     {$ENDC}
  2093. FUNCTION PBUnshareAsync(paramBlock: HParmBlkPtr): OSErr;
  2094.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2095.     INLINE $205F, $7043, $A660, $3E80;
  2096.     {$ENDC}
  2097. FUNCTION PBGetUGEntrySync(paramBlock: HParmBlkPtr): OSErr;
  2098.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2099.     INLINE $205F, $7044, $A260, $3E80;
  2100.     {$ENDC}
  2101. FUNCTION PBGetUGEntryAsync(paramBlock: HParmBlkPtr): OSErr;
  2102.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2103.     INLINE $205F, $7044, $A660, $3E80;
  2104.     {$ENDC}
  2105.  
  2106.  
  2107.  
  2108. {$IFC TARGET_CPU_68K }
  2109. {
  2110.     PBGetAltAccess and PBSetAltAccess are obsolete and will not be supported 
  2111.     on PowerPC. Equivalent functionality is provided by the routines 
  2112.     PBGetForeignPrivs and PBSetForeignPrivs.
  2113. }
  2114. FUNCTION PBGetAltAccessSync(paramBlock: HParmBlkPtr): OSErr;
  2115.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2116.     INLINE $205F, $7060, $A060, $3E80;
  2117.     {$ENDC}
  2118. FUNCTION PBGetAltAccessAsync(paramBlock: HParmBlkPtr): OSErr;
  2119.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2120.     INLINE $205F, $7060, $A460, $3E80;
  2121.     {$ENDC}
  2122. FUNCTION PBSetAltAccessSync(paramBlock: HParmBlkPtr): OSErr;
  2123.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2124.     INLINE $205F, $7061, $A060, $3E80;
  2125.     {$ENDC}
  2126. FUNCTION PBSetAltAccessAsync(paramBlock: HParmBlkPtr): OSErr;
  2127.     {$IFC TARGET_OS_MAC AND TARGET_CPU_68K AND NOT TARGET_RT_MAC_CFM}
  2128.     INLINE $205F, $7061, $A460, $3E80;
  2129.     {$ENDC}
  2130. FUNCTION PBGetAltAccess(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2131. FUNCTION PBSetAltAccess(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2132. {$ENDC}  {TARGET_CPU_68K}
  2133.  
  2134.  
  2135. {
  2136.     The PBxxx() routines are obsolete.  
  2137.     
  2138.     Use the PBxxxSync() or PBxxxAsync() version instead.
  2139. }
  2140. {$IFC OLDROUTINENAMES }
  2141. FUNCTION PBGetVInfo(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2142. FUNCTION PBXGetVolInfo(paramBlock: XVolumeParamPtr; async: BOOLEAN): OSErr;
  2143. FUNCTION PBGetVol(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2144. FUNCTION PBSetVol(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2145. FUNCTION PBFlushVol(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2146. FUNCTION PBCreate(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2147. FUNCTION PBDelete(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2148. FUNCTION PBOpenDF(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2149. FUNCTION PBOpenRF(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2150. FUNCTION PBRename(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2151. FUNCTION PBGetFInfo(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2152. FUNCTION PBSetFInfo(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2153. FUNCTION PBSetFLock(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2154. FUNCTION PBRstFLock(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2155. FUNCTION PBSetFVers(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2156. FUNCTION PBAllocate(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2157. FUNCTION PBGetEOF(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2158. FUNCTION PBSetEOF(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2159. FUNCTION PBGetFPos(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2160. FUNCTION PBSetFPos(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2161. FUNCTION PBFlushFile(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2162. FUNCTION PBCatSearch(paramBlock: CSParamPtr; async: BOOLEAN): OSErr;
  2163. FUNCTION PBOpenWD(paramBlock: WDPBPtr; async: BOOLEAN): OSErr;
  2164. FUNCTION PBCloseWD(paramBlock: WDPBPtr; async: BOOLEAN): OSErr;
  2165. FUNCTION PBHSetVol(paramBlock: WDPBPtr; async: BOOLEAN): OSErr;
  2166. FUNCTION PBHGetVol(paramBlock: WDPBPtr; async: BOOLEAN): OSErr;
  2167. FUNCTION PBCatMove(paramBlock: CMovePBPtr; async: BOOLEAN): OSErr;
  2168. FUNCTION PBDirCreate(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2169. FUNCTION PBGetWDInfo(paramBlock: WDPBPtr; async: BOOLEAN): OSErr;
  2170. FUNCTION PBGetFCBInfo(paramBlock: FCBPBPtr; async: BOOLEAN): OSErr;
  2171. FUNCTION PBGetCatInfo(paramBlock: CInfoPBPtr; async: BOOLEAN): OSErr;
  2172. FUNCTION PBSetCatInfo(paramBlock: CInfoPBPtr; async: BOOLEAN): OSErr;
  2173. FUNCTION PBAllocContig(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2174. FUNCTION PBLockRange(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2175. FUNCTION PBUnlockRange(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2176. FUNCTION PBSetVInfo(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2177. FUNCTION PBHGetVInfo(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2178. FUNCTION PBHOpen(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2179. FUNCTION PBHOpenRF(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2180. FUNCTION PBHOpenDF(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2181. FUNCTION PBHCreate(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2182. FUNCTION PBHDelete(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2183. FUNCTION PBHRename(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2184. FUNCTION PBHRstFLock(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2185. FUNCTION PBHSetFLock(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2186. FUNCTION PBHGetFInfo(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2187. FUNCTION PBHSetFInfo(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2188. FUNCTION PBMakeFSSpec(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2189. FUNCTION PBHGetVolParms(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2190. FUNCTION PBHGetLogInInfo(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2191. FUNCTION PBHGetDirAccess(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2192. FUNCTION PBHSetDirAccess(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2193. FUNCTION PBHMapID(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2194. FUNCTION PBHMapName(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2195. FUNCTION PBHCopyFile(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2196. FUNCTION PBHMoveRename(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2197. FUNCTION PBHOpenDeny(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2198. FUNCTION PBHOpenRFDeny(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2199. FUNCTION PBExchangeFiles(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2200. FUNCTION PBCreateFileIDRef(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2201. FUNCTION PBResolveFileIDRef(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2202. FUNCTION PBDeleteFileIDRef(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2203. FUNCTION PBGetForeignPrivs(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2204. FUNCTION PBSetForeignPrivs(paramBlock: HParmBlkPtr; async: BOOLEAN): OSErr;
  2205. FUNCTION PBDTAddIcon(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2206. FUNCTION PBDTGetIcon(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2207. FUNCTION PBDTGetIconInfo(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2208. FUNCTION PBDTAddAPPL(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2209. FUNCTION PBDTRemoveAPPL(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2210. FUNCTION PBDTGetAPPL(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2211. FUNCTION PBDTSetComment(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2212. FUNCTION PBDTRemoveComment(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2213. FUNCTION PBDTGetComment(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2214. FUNCTION PBDTFlush(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2215. FUNCTION PBDTReset(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2216. FUNCTION PBDTGetInfo(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2217. FUNCTION PBDTDelete(paramBlock: DTPBPtr; async: BOOLEAN): OSErr;
  2218. {$ENDC}  {OLDROUTINENAMES}
  2219.  
  2220. {$IFC OLDROUTINELOCATIONS }
  2221. FUNCTION PBOpen(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2222. FUNCTION PBClose(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2223. FUNCTION PBRead(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2224. FUNCTION PBWrite(paramBlock: ParmBlkPtr; async: BOOLEAN): OSErr;
  2225. {$ENDC}  {OLDROUTINELOCATIONS}
  2226.  
  2227. {$ALIGN RESET}
  2228. {$POP}
  2229.  
  2230. {$SETC UsingIncludes := FilesIncludes}
  2231.  
  2232. {$ENDC} {__FILES__}
  2233.  
  2234. {$IFC NOT UsingIncludes}
  2235.  END.
  2236. {$ENDC}
  2237.